繁体   English   中英

hamcrest“ hasItem”能否获得很少的匹配者?

[英]can hamcrest “hasItem” get few matchers?

我看到了这个帖子

assertThat( myClass.getMyItems(), contains(
    hasProperty("foo", is("bar")), 
    hasProperty("name", is("bar"))
));

  assertThat(logsFromWaze, hasItem(
                hasProperty("foo", is("bar")),
                hasProperty("name", is("bar"))));

如何运作?

hasItem是否不希望将一个匹配器作为参数而不是匹配器列表?

没有hasItem接受可变参数匹配,但你可以结合两种hasProperty("foo", is("bar"))hasProperty("name", is("bar"))通过allOf匹配:

assertThat(logsFromWaze, hasItem(
        allOf(
                hasProperty("foo", is("bar")),
                hasProperty("name", is("bar"))
        )
));

单次通过检查的Iterable时,如果通过至少一个与传递给allOf所有匹配项匹配的项,则此测试将成功。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM