Я работаю над серией модульных тестов в Python, некоторые из которых зависят от значения переменной конфигурации. Эти переменные хранятся в глобальном файле конфигурации Python и используются в других модулях. Я хотел бы написать модульные тесты для разных значений конфигурационных переменных, но пока не нашел способ сделать это.
У меня нет возможности переписать подписи методов, которые я тестирую.
Это то, что я хотел бы достичь:
from my_module import my_function_with_global_var
class TestSomething(self.unittest):
def test_first_case(self):
from config import MY_CONFIG_VARIABLE
MY_CONFIG_VARIABLE = True
self.assertEqual(my_function_with_global_var(), "First result")
def test_second_case(self):
from config import MY_CONFIG_VARIABLE
MY_CONFIG_VARIABLE = False
self.assertEqual(my_function_with_global_var(), "Second result")
Спасибо.
Изменить: сделал пример кода более откровенным.