class C:
def f():
calls g
def g():
# Do something
Как я могу издеваться над g, чтобы проверить f в модуле тестирования, который импортирует класс C?
class C:
def f():
calls g
def g():
# Do something
Как я могу издеваться над g, чтобы проверить f в модуле тестирования, который импортирует класс C?
вы можете издеваться над этой функцией, используя такой объект пути;
with patch.object(C, 'g', MagicMock(return_value='something')):
c.f()
таким образом, когда ваш код вызывает функцию g, он возвращает имитированный ответ
Примечание: перед использованием следует импортировать патч.
Вы можете найти подробную информацию по ссылке ниже:
https://docs.python.org/3/library/unittest.mock.html