У меня есть скрипт python reconciler.py, код которого приведен ниже
from service.type.logger import getLogger
logger = getLogger()
class get_or_create_obj(model_class, is_new_asset, **kwargs):
if is_new_asset:
return model_class.objects.create(**kwargs)
else:
obj, created = model_class.objects.get_or_create(**kwargs)
return obj
Мне нужно написать тестовый пример, который удостоверится, что getLogger вызывается. Я пробовал это,
class TestLogger(MyTestCase):
def test_logger(self):
with patch("service.type.logger.getLogger") as logger:
assert logger.called
Но результат неверный.
Пожалуйста, сообщите, что я делаю неправильно?
Вы не вызываете регистратор после того, как исправите его — он уже вызывался при импорте до того, как он был исправлен.
@MrBeanBremen да, но как я могу это утверждать?
Вы можете перезагрузить модуль (
importlib.reload()
) после того, как исправите его.