diff a/test/jdk/java/util/Collections/NullComparator.java b/test/jdk/java/util/Collections/NullComparator.java --- a/test/jdk/java/util/Collections/NullComparator.java +++ b/test/jdk/java/util/Collections/NullComparator.java @@ -1,7 +1,7 @@ /* - * Copyright (c) 1999, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1999, 2026, 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. @@ -23,18 +23,21 @@ /* * @test * @bug 4224271 * @summary A null Comparator is now specified to indicate natural ordering. + * @library /test/lib */ +import jdk.test.lib.valueclass.VClass; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; public class NullComparator { + public static void main(String[] args) throws Exception { List list = new ArrayList(100); for (int i=0; i<100; i++) list.add(new Integer(i)); List sorted = new ArrayList(list); @@ -59,7 +62,20 @@ throw new Exception("Collections.binarySearch"); if (!Collections.min(list, null).equals(new Integer(0))) throw new Exception("Collections.min"); if (!Collections.max(list, null).equals(new Integer(99))) throw new Exception("Collections.max"); + + List vlist = new ArrayList<>(); + for (int i = 0; i < 100; i++) vlist.add(new VClass(i, new int[] { i })); + Collections.shuffle(vlist); + Collections.sort(vlist, null); + for (int i = 0; i < 100; i++) + if (!vlist.get(i).equals(new VClass(i, new int[] { i }))) throw new Exception("value Collections.sort"); + if (Collections.binarySearch(vlist, new VClass(69, new int[] { 69 }), null) != 69) + throw new Exception("value binarySearch"); + if (!Collections.min(vlist, null).equals(new VClass(0, new int[] { 0 }))) + throw new Exception("value min"); + if (!Collections.max(vlist, null).equals(new VClass(99, new int[] { 99 }))) + throw new Exception("value max"); } }