0
我正在爲我在golang中開發的函數編寫單元測試。這裏是代碼片段:如何在golang中模擬函數以獲得不同的返回值
func myFunc() {
//there is some code
err := json.Unmarshal (a, &b)
if err != nil {
//handle error
}
//there is some more code
err := json.Unmarshal (c, &d)
if err != nil {
//handle error
}
}
現在我想嘲笑首先解組返回成功和第二解組返回失敗。在Python中,我看到一個類似的帖子: Python mock multiple return values
但我找不到一個golang。任何人都可以請幫我。
不幸的是,這在Golang中並不那麼簡單。最好的選擇是重構你的函數,這樣'json.Unmarshal'可以強制返回一個錯誤,例如當調用'json.Unmarshal(a,&b)'時,a不是json格式。 – Yerken