8134459: java/util/stream/test/org/openjdk/tests/java/util/stream/WhileOpTest.java timed out
Reviewed-by: psandoz, rriggs
This commit is contained in:
parent
7838184968
commit
de4aa804af
test/jdk
java/util/stream/test/org/openjdk/tests/java/util/stream
lib/testlibrary/bootlib/java.base/java/util/stream
@ -47,6 +47,7 @@ import java.util.stream.TestData;
|
||||
/*
|
||||
* @test
|
||||
* @bug 8071597 8193856
|
||||
* @run main/timeout=240
|
||||
*/
|
||||
@Test
|
||||
public class WhileOpTest extends OpTestCase {
|
||||
|
@ -48,6 +48,7 @@ import java.util.function.ToLongFunction;
|
||||
import static org.testng.Assert.assertEquals;
|
||||
import static org.testng.Assert.assertTrue;
|
||||
import static org.testng.Assert.assertFalse;
|
||||
import static org.testng.Assert.fail;
|
||||
|
||||
/**
|
||||
* LambdaTestHelpers -- assertion methods and useful objects for lambda test cases
|
||||
@ -277,7 +278,7 @@ public class LambdaTestHelpers {
|
||||
|
||||
public static<T> void assertContents(Iterable<T> actual, Iterable<T> expected) {
|
||||
if (actual instanceof Collection && expected instanceof Collection) {
|
||||
assertEquals(actual, expected);
|
||||
assertIterableEquals(actual, expected);
|
||||
} else {
|
||||
assertContents(actual.iterator(), expected.iterator());
|
||||
}
|
||||
@ -287,6 +288,42 @@ public class LambdaTestHelpers {
|
||||
assertEquals(toBoxedList(actual), toBoxedList(expected));
|
||||
}
|
||||
|
||||
// Workaround excessive String creation in inner loop in org.testng.Assert.assertEquals(Iterable<?>, Iterable<?>)
|
||||
static public void assertIterableEquals(Iterable<?> actual, Iterable<?> expected) {
|
||||
if(actual == expected) {
|
||||
return;
|
||||
}
|
||||
|
||||
if(actual == null || expected == null) {
|
||||
fail("Iterables not equal: expected: " + expected + " and actual: " + actual);
|
||||
}
|
||||
|
||||
assertIteratorsEquals(actual.iterator(), expected.iterator());
|
||||
}
|
||||
|
||||
// Workaround excessive String creation in inner loop in org.testng.Assert.assertEquals(Iterator<?>, Iterator<?>)
|
||||
static public void assertIteratorsEquals(Iterator<?> actual, Iterator<?> expected) {
|
||||
if (actual == expected) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (actual == null || expected == null) {
|
||||
fail("Iterators not equal: expected: " + expected + " and actual: " + actual);
|
||||
}
|
||||
|
||||
while (actual.hasNext() && expected.hasNext()) {
|
||||
Object e = expected.next();
|
||||
Object a = actual.next();
|
||||
assertEquals(a, e, "Iterator contents differ");
|
||||
}
|
||||
|
||||
if(actual.hasNext()) {
|
||||
fail("Actual iterator returned more elements than the expected iterator.");
|
||||
} else if(expected.hasNext()) {
|
||||
fail("Expected iterator returned more elements than the actual iterator.");
|
||||
}
|
||||
}
|
||||
|
||||
@SafeVarargs
|
||||
@SuppressWarnings("varargs")
|
||||
public static<T> void assertContents(Iterator<T> actual, T... expected) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user