got*_*nes 13 python unit-testing mocking
如何断言a Mock和/或a 上的属性MagicMock被访问?
例如,
from unittest.mock import MagicMock
def foo(x):
a = x.value
m = MagicMock()
foo(m)
m.attr_accessed('value') # method that does not exist but I wish did; should return True
Run Code Online (Sandbox Code Playgroud)
检查foo试图访问的实际方法是什么m.value?
小智 13
您可以使用此处所述的PropertyMock .
例如,
from unittest.mock import MagicMock, PropertyMock
def foo(x):
a = x.value
m = MagicMock()
p = PropertyMock()
type(m).value = p
foo(m)
p.assert_called_once_with()
Run Code Online (Sandbox Code Playgroud)