【发布时间】:2017-12-24 03:22:31
【问题描述】:
假设我有一个模拟对象(让它成为 Mock 或 MagicMock)。我想模拟它的一种方法来为特定输入返回一个值并为另一个特定输入返回另一个值。如何在不必关心输入发送到方法的顺序的情况下做到这一点?
伪代码:
def test_blah():
o = MagicMock()
# How to do I these?
o.foo.return_value.on(1) = 10
o.foo.return_value.on(2) = 20
assert o.foo(2) == 20
assert o.foo(1) == 10
【问题讨论】:
标签: python python-3.x mocking python-unittest