用于 unittest.mock 的非酒精 Mockito 风格的 when-then 实用程序
项目描述
无酒精鸡尾酒
不含酒精的、受 Mockito 启发的实用程序unittest.mock!
这个包提供了非常简单的实用程序,用于使用 Mockito 启发的语法为模拟设置返回值:
from unittest.mock import MagicMock
from mocktail import when
my_mock = MagicMock()
when(my_mock).some_method('foo').then_return('bar')
my_mock.some_method('foo') # 'bar'
与其他解决方案(如mockito-python)不同,它故意只适用于使用unittest.mock. 要设置任意对象的返回值,请与 结合使用unittest.mock.patch。
安装
pip install mocktail
买家小心!
这个包——虽然非常小——处于早期的 alpha 阶段。使用风险自负!
贡献
这个 Github 存储库很乐意接受拉取请求和错误报告。
执照
麻省理工学院
去做
- (更多) 匹配器
- “其余 args / kwargs”的匹配器
verify句法- 文档
- 某种使“错过”匹配更明确的方法,即。引发错误,例如
when(...).foo(...).then_return(...).raise_missing()或when(..., raise_missing=True).foo(...).then_return(...) then_returns挂钩多个呼叫代理时重构逻辑。目前,它应该可以工作,因为现有side_effect的被调用,但它有点毛茸茸- 可以删除匹配器接口,而我们可以只覆盖
__eq__匹配器