これはコードMocking - 発信者の例外を発生させるにはどうすればよいですか?
def move(*args, **kwargs):
try:
shutil.move(source, destination)
except Exception as e:
raise e
と私のtests.pyで
@patch.object(shutil, 'move')
def test_move_catch_exception(self, mock_rmtree):
''' Tests moving a target hits exception. '''
mock_rmtree.side_effect = Exception('abc')
self.assertRaises(Exception, move,
self.src_f, self.src_f, **self.kwargs)
であると仮定それは私がmock_rmtree
に主張するならば、それは通過します。この
File "unittests.py", line 84, in test_move_catch_exception
self.src_f, self.src_f, **self.kwargs)
AssertionError: Exception not raised
を言いました。呼び出し元(この場合は関数move
)でどのようにアサートできますか?が指摘
aquavitae として、主な理由は、コピー&ペーストの誤りだった、とも私は初めにタプルを主張しました。正しい戻り値のタイプで常にアシストしてください...
はありがとうございました。私は混乱のために謝罪した。それは私が捕まえなかったコピーペーストエラーでした。はい、私はrmtreeではなくむしろ動いています。私はそれに応じて投稿を編集した。あなたはここで私の不注意について正しいです。どうもありがとう。 – CppLearner