我正在尝试用副作用模拟 Python 中的实例方法。我希望/期望使用初始“self”参数来调用我的副作用,我可以用它来确定返回值。
所以我有这样的事情:
import mock
class TestCases(unittest.TestCase):
@mock.patch('Item.exists')
def test_foo(self, mock_item_exists):
def item_exists_side_effect(*args, **kwargs):
# I expect args[0] here to be supplied and to refer to the item
_self = args[0]
return _self.name == 'bar'
mock_item_exists.side_effect = item_exists_side_effect
...
Run Code Online (Sandbox Code Playgroud)
但是,当调用 Item.exists() 时,我最终会进入副作用函数,但参数列表为空。
这是预期的吗?难道我做错了什么?
| 归档时间: |
|
| 查看次数: |
6313 次 |
| 最近记录: |