У меня есть реальный метод, который выглядит так:
def patch(self, policy_id, transaction_id):
command = SomeCommand(id, submission_data=request.json)
print("==========should be mock command========", command)
try:
return self._service.call(command), 200
except ResponseError as error:
abort(500, message=str(error))
и у меня есть тест, который выглядит так, но не работает, и я не знаю почему. Это не работает, потому что команда не фиктивная:
@pytest.fixture(autouse=True)
def mock_command(mocker):
return mocker.patch.object(
SomeCommand,
"__init__",
return_value=None
)
@pytest.fixture(autouse=True)
def mock_service(mocker):
return mocker.patch(
'app.RealService.some_real_method',
return_value=True
def test_calls_ervice_with_command(
self, client, id, mock_service):
response = client.patch( f'some_route/is/this')
mock_service.assert_called_once_with(mock_command)
Что я делаю не так? Видите что-нибудь?