【发布时间】:2015-09-28 18:40:28
【问题描述】:
在 AssertJ 中是否有来自 Hamcrest 的 everyItem() 的类比?
我有一个电子邮件列表,需要进行断言以检查每封电子邮件是否包含子字符串“alex”。目前我可以用 AssertJ 做到这一点的唯一方法如下:
List<String> actual = Arrays.asList("alex@gmail.com", "alex1@gmail.com", "ale2@hotmail.com", "bred@gmail.com");
SoftAssertions softly = new SoftAssertions();
for(String email: actual ) {
softly.assertThat(email).contains("alex");
}
softly.assertAll();
也可以在没有软断言的情况下完成,但我更愿意检查列表中的所有项目。
还有更简洁的方法吗?具体来说,AssertJ 中有没有办法检查列表中的每个项目以匹配子字符串?
在 Hamcrest 中,我可以一行完成:
assertThat(actual, everyItem(containsString("alex")));
但在 AssertJ 中,无论如何我都必须手动遍历列表。
【问题讨论】: