32 import java.util.*; |
32 import java.util.*; |
33 import java.util.concurrent.*; |
33 import java.util.concurrent.*; |
34 |
34 |
35 @SuppressWarnings("unchecked") |
35 @SuppressWarnings("unchecked") |
36 public class BiggernYours { |
36 public class BiggernYours { |
37 static final Random rnd = new Random(); |
37 static final Random rnd = new Random(18675309); |
38 |
38 |
39 static void compareCollections(Collection c1, Collection c2) { |
39 static void compareCollections(Collection c1, Collection c2) { |
40 arrayEqual(c1.toArray(), |
40 Object[] c1Array = c1.toArray(); |
41 c2.toArray()); |
41 Object[] c2Array = c2.toArray(); |
42 arrayEqual(c1.toArray(new Object[0]), |
42 |
43 c2.toArray(new Object[0])); |
43 check(c1Array.length == c2Array.length); |
44 arrayEqual(c1.toArray(new Object[5]), |
44 for(Object aC1 : c1Array) { |
45 c2.toArray(new Object[5])); |
45 boolean found = false; |
|
46 for(Object aC2 : c2Array) { |
|
47 if(Objects.equals(aC1, aC2)) { |
|
48 found = true; |
|
49 break; |
|
50 } |
|
51 } |
|
52 |
|
53 if(!found) |
|
54 fail(aC1 + " not found in " + Arrays.toString(c2Array)); |
|
55 } |
46 } |
56 } |
47 |
57 |
48 static void compareMaps(Map m1, Map m2) { |
58 static void compareMaps(Map m1, Map m2) { |
49 compareCollections(m1.keySet(), |
59 compareCollections(m1.keySet(), |
50 m2.keySet()); |
60 m2.keySet()); |