如何断言数组中某个值的存在
How to assert on the existence of a certain value in an array
class Configuration { String name, String type }
Configuration[] configurations = ..
我想进行断言检查以查看数组是否在名称字段中包含特定值(比如名称 =“任何”)。我们目前正在循环数组来检查这个,什么是优雅的方式
使用流 API:
assertTrue(Arrays.stream(configurations).anyMatch(c -> "Any".equals(c.name));
使用 Streams API and a method reference 的另一个细微变化:
assertTrue(Arrays
.stream(configurations)
.map(c -> c.name)
.anyMatch("ValueToLookFor"::equals));
使用AssertJ:
assertThat(configurations).extracting(Configuration::getName).contains("Any");
或者您可能更喜欢:
assertThat(configurations).anyMatch(c -> "Any".equals(c.name));
class Configuration { String name, String type }
Configuration[] configurations = ..
我想进行断言检查以查看数组是否在名称字段中包含特定值(比如名称 =“任何”)。我们目前正在循环数组来检查这个,什么是优雅的方式
使用流 API:
assertTrue(Arrays.stream(configurations).anyMatch(c -> "Any".equals(c.name));
使用 Streams API and a method reference 的另一个细微变化:
assertTrue(Arrays
.stream(configurations)
.map(c -> c.name)
.anyMatch("ValueToLookFor"::equals));
使用AssertJ:
assertThat(configurations).extracting(Configuration::getName).contains("Any");
或者您可能更喜欢:
assertThat(configurations).anyMatch(c -> "Any".equals(c.name));