29 AĞUSTOS 2012, ÇARŞAMBA
Fonksiyon/yöntemi kullanarak Sahte değil çağrıldı iddia
Sahte kütüphanem uygulamasını test etmek için kullanıyorum, ama bazı fonksiyonu olmadığını iddia etmek istiyorum. Sahte dokümanlar mock.assert_called_with
gibi yöntemleri hakkında konuşmak ve mock.assert_called_once_with
ama mock.assert_not_called
falan alay doğrulamak için ilgili gibi bir şey bulamadımAradı.
Havalı ya da pythonic görünmüyor olsa da aşağıdaki gibi bir şey ile yatabilirim:
def test_something:
# some actions
with patch('something') as my_var:
try:
# args are not important. func should never be called in this test
my_var.assert_called_with(some, args)
except AssertionError:
pass # this error being raised means it's ok
# other stuff
Bunu gerçekleştirmek için nasıl herhangi bir fikir?
Herhangi bir yardım için teşekkürler
CEVAP
29 AĞUSTOS 2012, ÇARŞAMBA
Bu dava için çalışması gerekir;
assert not my_var.called, 'method should not have been called'
Örnek;
>>> mock=Mock()
>>> mock.a()
<Mock name='mock.a()' id='4349129872'>
>>> assert not mock.b.called, 'b was called and should not have been'
>>> assert not mock.a.called, 'a was called and should not have been'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AssertionError: a was called and should not have been
Bunu PaylaÅŸ:
Anahtar kelime yazma 'içi' f...
Paketler Ubuntu düğüm Paket Yöneticisi...
Yinelemeli olarak kullanarak Emacs ve ...
't kopya başvuruları (DLL) eğer ç...
'en iyi dize birleştirme yöntemi ...