看起來好像設置任何方法調用期望與摩卡阻止調用原始實現。設置方法調用期望值,同時仍然調用原始實現
This似乎涵蓋了用rspec調用原始方法。
有沒有辦法與摩卡做到這一點?還是有人知道爲什麼這不會被支持?
看起來好像設置任何方法調用期望與摩卡阻止調用原始實現。設置方法調用期望值,同時仍然調用原始實現
This似乎涵蓋了用rspec調用原始方法。
有沒有辦法與摩卡做到這一點?還是有人知道爲什麼這不會被支持?
由於幾個原因,這是不可能的。一個原因是測試方法的副作用和測試方法的調用可以在兩個單獨的測試中更清楚地完成。我讀過的另一個原因是,在純粹的單元測試中,你不會對另一種方法的副作用做出斷言。您將測試該調用,然後在單元測試中測試該特定方法的調用方法副作用。
Downvoting:我認爲你在混淆返回值和副作用。 –
@ MarnenLaibow-Koser你能更具體嗎?如果出現錯誤,我可以更正,但請刪除downvote。 – joshs
你正在談論制定「關於另一種方法的副作用的斷言」,但OP *看起來*要做什麼(雖然我承認它是模糊的)正試圖依賴另一種方法的*返回值*。這與副作用完全不同。至於downvote,我低估了,因爲我認爲你的回答是不正確的和誤導性的(因爲已經給出的理由)。除非我不再相信這種情況,否則我不會刪除downvote。 –
我已經過渡到與rspec嘲笑與偉大的結果。 – aceofspades