このシグネチャでメソッドを単体テストしたいとします:
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"});
ハムクレストはこの種のものに良いでしょうか?もしそうなら、正確に上記の私の擬似構文のハムクレストバージョンは何でしょうか?