我正在使用模拟库和 unittest2 来测试我的软件项目的不同方面。
目前我有以下问题:是否可以模拟一个函数,以便默认关键字参数不同,但功能仍然存在?
说我有以下代码
class C():
def fun(self, bool_arg = True):
if bool_arg:
return True
else
return False
如果我想模拟 C.fun 怎么办:
C.fun = mock.Mock(???)
这样 C 的每个实例都会将关键字“bool_arg”替换为 False,而不是 True,结果为:
c = C()
c.fun()
返回:
错误的