このシグネチャでメソッドを単体テストしたいとします:
List<MyItem> getMyItems();
を介してアクセスされるMyItem多くのプロパティを持つPojoであると想定し"name"ますgetName()。
私が確認する必要があるのは、、List<MyItem>またはany Iterableに2つのMyItemインスタンスが含まれ"name"ていることです。そのプロパティには値"foo"とがあります"bar"。他のプロパティが一致しない場合、このテストの目的は特に気にしません。名前が一致すれば、テストは成功です。
できればワンライナーにしたいです。これが私がやりたいことの一種の「疑似構文」です。
assert(listEntriesMatchInAnyOrder(myClass.getMyItems(), property("name"), new String[]{"foo", "bar"});
ハムクレストはこの種のものに良いでしょうか?もしそうなら、正確に上記の私の擬似構文のハムクレストバージョンは何でしょうか?