python 在同一级别和mock.patch中编写pytest fixture
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 在同一级别和mock.patch中编写pytest fixture相关的知识,希望对你有一定的参考价值。
@pytest.fixture
def stream():
return mock.Mock(spec=Stream)
@pytest.fixture
def output():
return open('test.txt', 'w')
@pytest.fixture
def tailer(self, stream, output):
with mock.patch('logging.getLogger', autospec=True):
yield Tailer(stream, output, mock.sentinel.lines)
@mock.patch('consumer.read_lines', autospec=True)
def test_tailer(mock_read, tailer, stream):
stream.fetch.return_value = "test\n"
tailer.run()
mock_read.assert_called_once_with(stream, mock.sentinel.lines)
with open('test.txt', 'r') as f:
assert f.read() == "test"
以上是关于python 在同一级别和mock.patch中编写pytest fixture的主要内容,如果未能解决你的问题,请参考以下文章
[Python Modules] unittest.mock
pytest - 模拟过程和时间
嘲笑一个类:赶上22
我可以在包装函数之前修补 Python 装饰器吗?
在 python 3.5 中模拟异步调用
Python:从项目层次结构中同一级别的另一个目录导入模块