test/java/util/Spliterator/SpliteratorTraversingAndSplittingTest.java

Print this page
rev 7626 : 8015320: Pull spliterator() up from Collection to Iterable
Reviewed-by:
Contributed-by: brian.goetz@oracle.com


 304                 }
 305 
 306                 @Override
 307                 public Integer first() {
 308                     return s.first();
 309                 }
 310 
 311                 @Override
 312                 public Integer last() {
 313                     return s.last();
 314                 }
 315 
 316                 @Override
 317                 public Spliterator<Integer> spliterator() {
 318                     return SortedSet.super.spliterator();
 319                 }
 320             }
 321             db.addCollection(
 322                     c -> new AbstractSortedSetImpl(c));
 323 















 324             //
 325 
 326             db.add("Arrays.asList().spliterator()",
 327                    () -> Spliterators.spliterator(Arrays.asList(exp.toArray(new Integer[0])), 0));
 328 
 329             db.addList(ArrayList::new);
 330 
 331             db.addList(LinkedList::new);
 332 
 333             db.addList(Vector::new);
 334 
 335 
 336             db.addCollection(HashSet::new);
 337 
 338             db.addCollection(LinkedHashSet::new);
 339 
 340             db.addCollection(TreeSet::new);
 341 
 342 
 343             db.addCollection(c -> { Stack<Integer> s = new Stack<>(); s.addAll(c); return s;});




 304                 }
 305 
 306                 @Override
 307                 public Integer first() {
 308                     return s.first();
 309                 }
 310 
 311                 @Override
 312                 public Integer last() {
 313                     return s.last();
 314                 }
 315 
 316                 @Override
 317                 public Spliterator<Integer> spliterator() {
 318                     return SortedSet.super.spliterator();
 319                 }
 320             }
 321             db.addCollection(
 322                     c -> new AbstractSortedSetImpl(c));
 323 
 324             class IterableWrapper implements Iterable<Integer> {
 325                 final Iterable<Integer> it;
 326 
 327                 IterableWrapper(Iterable<Integer> it) {
 328                     this.it = it;
 329                 }
 330 
 331                 @Override
 332                 public Iterator<Integer> iterator() {
 333                     return it.iterator();
 334                 }
 335             }
 336             db.add("new Iterable.spliterator()",
 337                    () -> new IterableWrapper(exp).spliterator());
 338 
 339             //
 340 
 341             db.add("Arrays.asList().spliterator()",
 342                    () -> Spliterators.spliterator(Arrays.asList(exp.toArray(new Integer[0])), 0));
 343 
 344             db.addList(ArrayList::new);
 345 
 346             db.addList(LinkedList::new);
 347 
 348             db.addList(Vector::new);
 349 
 350 
 351             db.addCollection(HashSet::new);
 352 
 353             db.addCollection(LinkedHashSet::new);
 354 
 355             db.addCollection(TreeSet::new);
 356 
 357 
 358             db.addCollection(c -> { Stack<Integer> s = new Stack<>(); s.addAll(c); return s;});