Список функций, которые я хочу издеваться. Функция насмешки. ПайтестPython

Программы на Python
Ответить
Anonymous
 Список функций, которые я хочу издеваться. Функция насмешки. Пайтест

Сообщение Anonymous »


У меня есть список функций, которые возвращают логические значения. Это все называется так:

для f в функциях: если f(): проходить Я пишу тесты и хочу имитировать результат этих функций

@pytest.fixture защита is_first_func_mock (насмешник): макет = макет.патч.объект(SomeClass, 'first_func') вернуть издевательство а потом где-то в тесте я передаю этот фикстуру и пишу is_first_func_mock.return_value = True или что-то в этом роде

Но так как я не вызываю функцию напрямую в коде и поскольку указал это выше, то мок не работает.

Я нашел решение в Stackoverflow: Я могу вызывать такие функции:

if getattr(funcs_module, func.__name__)(): проходить Но мне это не нравится и я не хочу менять цикл

Обновление:
def some_name(fuctions: list[callable]): защита внутренняя (функция): @wraps(функция) оболочка async def (*args, **kwargs): #некоторый код для f в функциях: если f(): return await func(*args, **kwargs) поднять SomePermission возвратная обертка вернуться внутрь
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»