我有一個模塊,其中包含字典作爲關聯數組來實現一種switch語句。如何在python中模擬/修補關聯數組
def my_method1():
return "method 1"
def my_method2():
return "method 2"
map_func = {
'0': my_method1,
'1': my_method2
}
def disptach(arg):
return map_func[arg]()
如何在測試中模擬my_method1?我已經嘗試沒有成功如下:
import my_module as app
@patch('my_module.my_method1')
def test_mocking_sample(self, my_mock):
my_mock.return_value = 'mocked'
assert_equal('mocked',app.dispatch('0'))
任何想法?
我想你必須模擬調度('0')而不是my_method1。這是用arg'0'調用時的模擬調度。 – jgomo3