Python макет патча метод в экземпляре класса

У меня есть проект, назначающий 2 конфига в моем главном __init__ файл, так как они часто используются на протяжении всего проекта.

#__init__.py

from config import Config

config1 = Config('Email')
config2 = Config('Test')

Мой класс Config в config.py имеет метод с именем content что мне нужно издеваться над случаями config1 а также config2, Конфиг вызывает стороннюю библиотеку для выполнения http-запроса, поэтому мне нужно вернуть json словарь для ответа на content,

В функции валидаторов у меня есть следующее:

#validation.py

from parser import config1, config2

def validation(msg):
    if "email" in config1.keys():
        ...

Я не пытаюсь издеваться над тестами, но продолжаю получать ошибки. Я пробовал разные mock patch пути, но ни один не работает.

Моя последняя попытка заключается в следующем:

from mock import patch
from parser import validation

@patch('parser.Config')
def test_is_valid(mock_config):

    mock_config.return_value.content = "Test"

    assert validation.is_valid("email") == True

Что я делаю неправильно, что мои экземпляры Config (config1 и config2) неправильно возвращают значения.content? Спасибо

0 ответов

Другие вопросы по тегам