Получите фактические вызовы, которые потерпели неудачу в утверждении макета, используя метод assert_has_calls - PullRequest
1 голос
/ 18 марта 2020

Я издеваюсь над методом, а затем проверяю, получает ли он ожидаемые вызовы.

@mock.patch('connecter.Connector')
def test_queries(mock_connect):
    mock_connect().execute.return_value = [(55223,)]
    connector = connecter.Connector()
    expected_calls = [call(), call(), call().execute('SELECT * FROM table1;'), call().execute('SELECT * FROM table2;')]
    mock_connect.assert_has_calls(expected_calls)

Итак, это работает. Но если это терпит неудачу, это просто говорит мне, что утверждение терпит неудачу, и я не получаю никакой информации о том, какой элемент (какой вызов) фактически потерпел неудачу. Есть ли способ получить эту информацию, чтобы тесты были более информативными?

Я не смог найти ничего очевидного в документации.

...