예 : t.py
def a(obj):
print obj
def b():
a(1)
a(2)
그때:
from t import b
with patch('t.a') as m:
b()
m.assert_called_with(1)
나는 얻다:
AssertionError: Expected call: a(1)
Actual call: a(2)
가장 간단한 방법은 첫 번째 항목을 가져 와서 다음 mock.call_args_list
과 1
같이 호출되는지 확인하는 것입니다 .
call_args_list
이것은 순서대로 모의 객체에 대한 모든 호출의 목록입니다 (따라서 목록의 길이는 호출 된 횟수입니다).
assert m.call_args_list[0] == call(1)
에서 call
가져 오는 위치 mock
: from mock import call
.
또한 mock_calls
대신 작동 call_args_list
합니다.
또 다른 옵션은 다음을 사용하는 것입니다 assert_any_call()
.
m.assert_any_call(1)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다