< prev index next >

test/java/util/stream/bootlib/java.base/java/util/stream/StreamTestScenario.java

Print this page


   1 /*
   2  * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  */
  23 package java.util.stream;
  24 
  25 import java.util.Collections;
  26 import java.util.EnumSet;
  27 import java.util.Iterator;
  28 import java.util.Set;
  29 import java.util.Spliterator;

  30 import java.util.function.Consumer;
  31 import java.util.function.Function;
  32 
  33 /**
  34  * Test scenarios for reference streams.
  35  *
  36  * Each scenario is provided with a data source, a function that maps a fresh
  37  * stream (as provided by the data source) to a new stream, and a sink to
  38  * receive results.  Each scenario describes a different way of computing the
  39  * stream contents.  The test driver will ensure that all scenarios produce
  40  * the same output (modulo allowable differences in ordering).
  41  */
  42 @SuppressWarnings({"rawtypes", "unchecked"})
  43 public enum StreamTestScenario implements OpTestCase.BaseStreamTestScenario {
  44 
  45     STREAM_FOR_EACH(false) {
  46         <T, U, S_IN extends BaseStream<T, S_IN>>
  47         void run(TestData<T, S_IN> data, S_IN source, Consumer<U> b, Function<S_IN, Stream<U>> m) {
  48             Stream<U> s = m.apply(source);
  49             if (s.isParallel()) {


   1 /*
   2  * Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  */
  23 package java.util.stream;
  24 
  25 import java.util.Collections;
  26 import java.util.EnumSet;
  27 import java.util.Iterator;
  28 import java.util.Set;
  29 import java.util.Spliterator;
  30 import java.util.SpliteratorTestHelper;
  31 import java.util.function.Consumer;
  32 import java.util.function.Function;
  33 
  34 /**
  35  * Test scenarios for reference streams.
  36  *
  37  * Each scenario is provided with a data source, a function that maps a fresh
  38  * stream (as provided by the data source) to a new stream, and a sink to
  39  * receive results.  Each scenario describes a different way of computing the
  40  * stream contents.  The test driver will ensure that all scenarios produce
  41  * the same output (modulo allowable differences in ordering).
  42  */
  43 @SuppressWarnings({"rawtypes", "unchecked"})
  44 public enum StreamTestScenario implements OpTestCase.BaseStreamTestScenario {
  45 
  46     STREAM_FOR_EACH(false) {
  47         <T, U, S_IN extends BaseStream<T, S_IN>>
  48         void run(TestData<T, S_IN> data, S_IN source, Consumer<U> b, Function<S_IN, Stream<U>> m) {
  49             Stream<U> s = m.apply(source);
  50             if (s.isParallel()) {


< prev index next >