# HG changeset patch # User psandoz # Date 1376649990 -7200 # Node ID 208998c7e4dc3fdf8313333a075bfda3010054fa # Parent 2a0bfdf4c2db057e2d97dc2f1c3d7bbc54ca814d 8012940: More than 50 tests failed in Serialization/DeSerialization testing (test-mangled) Reviewed-by: ksrini diff -r 2a0bfdf4c2db -r 208998c7e4dc jdk/test/java/util/stream/bootlib/java/util/stream/LambdaTestMode.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/jdk/test/java/util/stream/bootlib/java/util/stream/LambdaTestMode.java Fri Aug 16 12:46:30 2013 +0200 @@ -0,0 +1,71 @@ +/* + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ +package java.util.stream; + +/** + * Runtime modes of test execution. + */ +public enum LambdaTestMode { + /** + * Execution mode with no particular runtime constraints. + */ + NORMAL, + + /** + * Execution mode where tests are executed for testing lambda serialization + * and deserialization. + * + *
This mode may be queried by tests or data supplied by data + * providers, which cannot otherwise be assigned to the test group + * serialization-hostile, to not execute or declare + * serialization-hostile code or data. + * + *
This mode is enabled if the boolean system property
+ * {@code org.openjdk.java.util.stream.sand.mode} is declared with a
+ * {@code true} value.
+ */
+ SERIALIZATION;
+
+ /**
+ * {@code true} if tests are executed in the mode for testing lambda
+ * Serialization ANd Deserialization (SAND).
+ */
+ private static final boolean IS_LAMBDA_SERIALIZATION_MODE =
+ Boolean.getBoolean("org.openjdk.java.util.stream.sand.mode");
+
+ /**
+ *
+ * @return the mode of test execution.
+ */
+ public static LambdaTestMode getMode() {
+ return IS_LAMBDA_SERIALIZATION_MODE ? SERIALIZATION : NORMAL;
+ }
+
+ /**
+ *
+ * @return {@code true} if normal test mode.
+ */
+ public static boolean isNormalMode() {
+ return getMode() == NORMAL;
+ }
+}
diff -r 2a0bfdf4c2db -r 208998c7e4dc jdk/test/java/util/stream/bootlib/java/util/stream/StreamTestDataProvider.java
--- a/jdk/test/java/util/stream/bootlib/java/util/stream/StreamTestDataProvider.java Fri Aug 16 12:29:58 2013 +0200
+++ b/jdk/test/java/util/stream/bootlib/java/util/stream/StreamTestDataProvider.java Fri Aug 16 12:46:30 2013 +0200
@@ -96,8 +96,14 @@
list.add(streamDataDescr("DelegatingStream(ArrayList):" + name,
() -> new ArrayList<>(intsAsList).stream()));
List