У меня есть два приспособления pytest, client
и app
. client
звонки app
.
Тестовая функция test_register
имеет аргументы client
и app
и, следовательно, вызывает оба прибора.
Мой вопрос заключается в том, всегда ли экземпляр app
, используемый в test_register, будет тем, который вызывал client
, и если так обычно работает pytest (утверждение в test_register проходит, поэтому оно верно в этот случай) .
Другими словами, генерирует ли pytest несвязанные экземпляры для каждого аргумента в тестовой функции, которая вызывает фиксатор, или она вызывает фиксаторы, и возвращенные экземпляры также ссылаются друг на друга?
Вот код:
@pytest.fixture
def app():
app = create_app({
'TESTING': True,
})
yield app
@pytest.fixture
def client(app):
return app.test_client()
def test_register(client, app):
assert client.application is app