1
私はメソッドの結果を模擬しようとしています。 a-b
は、私は2つの異なる文を書くために達成し、異なる結果を返すことができますどのように20 いくつかの引数のためのMockito条件
ない場合
Mockito.when(class.method(a,b)).thenReturn(c);
a-b
場合は20- に等しい:結果の2つのバリエーションがあるはずです?
P.S.私は1つの引数の条件をどのように使用するかを知っています。例:
class MyCondition extends ArgumentMatcher<AClass> { public boolean matches(Object sd) { boolean toReturn = (sd instanceof AClass) && (sd >15); return toReturn; } } Mockito.when(class.method(Mockito.argThat(new MyCondition()),b)).thenAnswer( new Answer<BClass>() { public BClass answer(InvocationOnMock invocation) { return new BClass(); } });
しかし、私はTWOメソッド引数の条件をどのように構築できますか?
たぶんここで使用するのに最適なツールではありませんmockito。いつでもクラスを拡張し、必要なif文でメソッドをオーバーライドすることができます。 – byxor
あなたのロジックをエンコードするのに 'Answer'を使うことができます。 –
このメソッドを正確に使用するクラスをテストし、メソッドの動作をシミュレートしたいと思います。 – user2957954