如何断言集合中的所有值都具有特定属性

Arp*_*pit 1 java mockito sonarqube

目前我正在这样做

while (permissions.hasNext()) {
  assertEquals(permissions.next().getRole(), "everybody");
}
Run Code Online (Sandbox Code Playgroud)

这工作得很好,但是有更好的方法吗?

之所以提出这个问题,是因为声纳目前显示出违规行为,并表示“向此测试用例添加至少一个断言”。我相信它无法读取循环内的断言。这是声纳中的错误吗?

Hri*_*zov 5

您可以使用 Java 8 流:

assertTrue(permissions
.stream()
.allMatch(permission -> permission.getRole().equals("everybody")));
Run Code Online (Sandbox Code Playgroud)