Python 関数をテストするにはos.listdir
、他の関数にパッチを適用する必要があります。os
しかし、パッチが適用されると、import
ステートメントは失敗します。この関数にパッチを当てて、tests.py を正常に動作させたままにすることはできますか?
壊れる例を次に示しますimport
。
import os
from mock import patch
# when both isdir and isfile are patched
# the function crashes
@patch('os.path.isdir', return_value=False)
@patch('os.path.isfile', return_value=False)
def test(*args):
import ipdb; ipdb.set_trace()
real_function(some_arguments)
pass
test()
real_function
パッチが適用されたos.path
と、通常の機能を確認するためのテストが必要です。