У меня был класс, где я использовал setup_method:
class TestClassUnderTest():
def setup_method(self, method):
with open(foo, "r") as bar_fd:
yaml_output = yaml.load(bar_fd, Loader=yaml.SafeLoader)
self.object_under_test = ClassUnderTest(yaml_output)
def test_initialization(self, mocker):
assert not self.object_under_test.boolean_attribute
Я хочу использовать плагин pytest-datadir для управления моими файлами данных в setup_method:
class TestClassUnderTest():
def setup_method(self, method, shared_datadir): # shared_datadir is the fixture from the plug-in
with open(str(shared_datadir.joinpath("name_of_file_inside_the_dir")), "r") as bar_fd:
yaml_output = yaml.load(bar_fd, Loader=yaml.SafeLoader)
self.object_under_test = ClassUnderTest(yaml_output)
Сообщение об ошибке ERROR tests/test_common.py::TestClassUnderTest::test_initialization - TypeError: setup_method() missing 1 required positional argument: 'shared_datadir'
заставляет меня поверить, что расположение аргументов строго и не работает так, как я ожидаю.
Могу ли я передать случайный прибор в метод настройки / разрыва?