クラスのメソッドを取得しました
interface Class1{
void method1(SomeObject... parameters);
}
カスタムのハムクレストマッチャーがあります
public class SomeObjectMatcher extends BaseMatcher<SomeObject>{...}
メソッド1に渡されたオブジェクトに一致する期待値の記述方法
SomeObject someObject = new SomeObject(...);
...
mockery.checking(new Expectations(){{
oneOf(class1).method1(with(new SomeObjectMatcher(someObject1)));
}}
実際の呼び出しは
class1.method1(someObject);
渡されたオブジェクトと期待されるオブジェクトは同じですが、実際に渡されたパラメーターはsomeObject1ではなく、SomeObject [] {someObject1}(1つのオブジェクトのみを持つ配列-someObject1)であるため、SomeObjectMatcherは失敗しますか?チェーンに新しいマッチャーを追加する方法はありますか?
oneOf(class1).method1(with(arrayHas(new SomeObjectMatcher(someObject1))));