Java JUnit 5 AssertAll Stream

时间:2017-03-24 16:55:13

标签: java junit java-stream junit5

我有

ArrayList<Executable>( () -> assertTrue(true), ... )

现在我正在尝试将其转换为Stream<Executable>以使用assertAll方法。

  public static void assertAll(Stream<Executable> executables)
                                                   throws MultipleFailuresError

如何将ArrayList<Executable>(如果没有比ArrayList更清晰的方式)转换为Stream<Executable>

参考:http://junit.org/junit5/docs/current/api/org/junit/jupiter/api/Assertions.html#assertAll-org.junit.jupiter.api.function.Executable...-

1 个答案:

答案 0 :(得分:3)

只需调用实现Collection的所有类继承的stream()方法:

assertAll(executableList.stream());

请注意,如果您已经可以使用ArrayList的元素,则可以将它们传递给assertAll,因为有一个overloaded method需要输入varargs:

assertAll(() -> assertTrue(true), ...)

这样就无需创建ArrayListStream