我有兩個自定義的ArgumentMatchers,我希望我的模擬根據參數值返回不同的值。如何將多個ArgumentMatchers傳遞給Mockito
實施例:
when(myMock.method(new ArgMatcher1()).thenReturn(false);
when(myMock.method(new ArgMatcher2()).thenReturn(true);
不幸的是,第二次調用在一個異常時,()的結果。這對我來說很有意義,因爲如果參數匹配兩個ArgumentMatchers,Mockito不知道是否返回true或false。有沒有辦法在Mockito中做到這一點?它甚至可以是這樣的:
when(myMock.method(new ArgMatcher2()).thenReturn(false).elseReturn(true);
請參閱http://stackoverflow.com/questions/13846837/using-multiple-argumentmatchers-on-the-same-mock?rq=1。 – 2013-03-08 21:00:10
你絕對可以有兩個不同的匹配器與Mockito一起工作。什麼是例外? ArgMatcher1和ArgMatcher2做了什麼? – jhericks 2013-03-09 01:29:21
我發現了一種更好的方式來做我需要的,所以我不再追求這個選項。 – 2013-03-09 02:52:16