模拟:在通话时间包裹方法和接收参数

时间:2018-06-06 13:18:12

标签: python testing mocking patch

我不知道是否有可能在某个内部代码中修补一个方法我不会以允许我接收方法将在调用该方法之前或之后接收的args的方式进行修改实际引用了调用该方法的对象。

我希望能够做一些像

这样的事情
def wrapping(method, *args, **kwargs):
    # do stuff
    rv = method(*args, **kwargs)
    # more stuff
    return rv


with mock.patch('path.to.The.method', wraps=wrapping):
    code_that_eventually_calls_the_method()

然后在最终调用该方法时我会进入包装,但是我可以在测试代码中预先调用mocked方法而不预先引用它的对象。这可以实现吗?

0 个答案:

没有答案
相关问题