コード例 #1
0
  private static void assertUnifiedSetEqualsAndHashCode(int shift) {
    MutableSet<CollidingInt> set1 = MultiReaderUnifiedSet.newSet();
    Set<CollidingInt> set2 = new HashSet<CollidingInt>();
    MutableSet<CollidingInt> set3 = MultiReaderUnifiedSet.newSet();
    MutableSet<CollidingInt> set4 = MultiReaderUnifiedSet.newSet();

    int size = 100000;
    for (int i = 0; i < size; i++) {
      set1.add(new CollidingInt(i, shift));
      set2.add(new CollidingInt(i, shift));
      set3.add(new CollidingInt(i, shift));
      set4.add(new CollidingInt(size - i - 1, shift));
    }

    Assert.assertEquals(set1, set2);
    Assert.assertEquals(set1.hashCode(), set2.hashCode());
    Verify.assertSetsEqual(set1, set3);
    Verify.assertEqualsAndHashCode(set1, set3);
    Verify.assertSetsEqual(set2, set4);
    Assert.assertEquals(set4, set2);
    Assert.assertEquals(set2.hashCode(), set4.hashCode());
  }