< prev index next >

test/java/util/stream/test/org/openjdk/tests/java/util/stream/FindFirstOpTest.java

Print this page

        

@@ -57,19 +57,23 @@
         exerciseStream(data, s -> s.filter(pFalse));
         exerciseStream(data, s -> s.filter(pEven));
     }
 
     void exerciseStream(TestData.OfRef<Integer> data, Function<Stream<Integer>, Stream<Integer>> fs) {
-        Optional<Integer> r = exerciseTerminalOps(data, fs, s -> s.findFirst());
-        if (r.isPresent()) {
             Iterator<Integer> i = fs.apply(data.stream()).iterator();
-            assertTrue(i.hasNext());
-            assertEquals(i.next(), r.get());
+        Optional<Integer> expected = i.hasNext() ? Optional.of(i.next()) : Optional.empty();
+        withData(data).terminal(fs, s -> s.findFirst())
+                      .expectedResult(expected)
+                      .resultAsserter((act, exp, ord, par) -> {
+                          if (par & !ord) {
+                              assertContains(act, fs.apply(data.stream()).iterator());
         }
         else {
-            assertFalse(fs.apply(data.stream()).iterator().hasNext());
+                              assertEquals(act, exp);
         }
+                      })
+                      .exercise();
     }
 
     @Test(dataProvider = "IntStreamTestData", dataProviderClass = IntStreamTestDataProvider.class)
     public void testIntStream(String name, TestData.OfInt data) {
         exerciseIntStream(data, s -> s);
< prev index next >