我们在python中使用Mock已经有一段时间了.
现在,我们有一种情况,我们想要模拟一个函数
def foo(self, my_param):
#do something here, assign something to my_result
return my_result
通常,模拟这一点的方法是(假设foo是对象的一部分)
self.foo = MagicMock(return_value="mocked!")
即使我多次调用foo(),我也可以使用
self.foo = MagicMock(side_effect=["mocked once", "mocked twice!"])
现在,我面临这样一种情况:当输入参数具有特定值时,我想返回一个固定值.因此,如果假设"my_param"等于"Something",那么我想返回"my_Cool_mock"
这似乎在mockito for python上有售
when(dummy).foo("something").thenReturn("my_cool_mock")
我一直在寻找如何用Mock实现同样的目标,但没有成功?
有什么 idea 吗?