gpt4 book ai didi

python - 如何使用通配符检查模拟调用?

转载 作者:太空狗 更新时间:2023-10-29 17:10:11 24 4
gpt4 key购买 nike

我正在编写单元测试,并且想检查具有函数对象的调用,如下所示:

call(u'mock', u'foobar', <function <lambda> at 0x1ea99b0>, 10)

如何在不重现 lambda 的情况下检查 call() 是否具有我想要的所有参数?

编辑:我想澄清一下,我使用的是 mock来自这里的图书馆:http://mock.readthedocs.org/en/latest/ . call我上面显示的是对 MagicMock 的调用对象,我想使用 assert_has_calls 检查.

最佳答案

我终于找到了如何做我想做的事。基本上,在使用 assert_has_calls 时,我希望一个参数匹配,而不管它是什么(因为我无法在测试期间每次都重新创建 lambda)。

方法是使用mock.ANY .

因此,在我的示例中,这可以匹配调用:

mocked_object.assert_has_calls([
call('mock', 'foobar', mock.ANY, 10)
])

关于python - 如何使用通配符检查模拟调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22184642/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com