@Test public void twoEmptySetsAreEqual() { final IntHashSet other = new IntHashSet(100); assertEquals(testSet, other); }
@Test public void differenceReturnsSetDifference() { addTwoElements(testSet); final IntHashSet other = new IntHashSet(100); other.add(1); final IntHashSet diff = testSet.difference(other); assertThat(diff, containsInAnyOrder(1001)); }
@Test public void copiesOtherIntHashSet() { addTwoElements(testSet); final IntHashSet other = new IntHashSet(100); other.copy(testSet); assertContainsElements(other); }
@Test public void setsWithTheSameValuesAreEqual() { final IntHashSet other = new IntHashSet(100); addTwoElements(testSet); addTwoElements(other); assertEquals(testSet, other); }
@Test public void setsWithTheDifferentSizesAreNotEqual() { final IntHashSet other = new IntHashSet(100); addTwoElements(testSet); other.add(1001); assertNotEquals(testSet, other); }
@Test public void removingEmptySetDoesNothing() { addTwoElements(testSet); assertFalse(testSet.removeAll(new IntHashSet(100))); assertFalse(testSet.removeAll(new HashSet<Integer>())); assertContainsElements(testSet); }
@Test public void differenceReturnsNullIfBothSetsEqual() { addTwoElements(testSet); final IntHashSet other = new IntHashSet(100); addTwoElements(other); assertNull(testSet.difference(other)); }
@Test public void setsWithTheDifferentValuesAreNotEqual() { final IntHashSet other = new IntHashSet(100); addTwoElements(testSet); other.add(2); other.add(1001); assertNotEquals(testSet, other); }
@Test public void containsEmptySet() { final IntHashSet other = new IntHashSet(100); assertTrue(testSet.containsAll(other)); assertTrue(testSet.containsAll((Collection<?>)other)); }
@Test public void addingEmptySetDoesNothing() { addTwoElements(testSet); assertFalse(testSet.addAll(new IntHashSet(100))); assertFalse(testSet.addAll(new HashSet<>())); assertContainsElements(testSet); }
@Test public void addingSubsetDoesNothing() { addTwoElements(testSet); final IntHashSet subset = new IntHashSet(100); subset.add(1); final HashSet<Integer> subSetCollection = new HashSet<>(subset); assertFalse(testSet.addAll(subset)); assertFalse(testSet.addAll(subSetCollection)); assertContainsElements(testSet); }
@Test public void addingEqualSetDoesNothing() { addTwoElements(testSet); final IntHashSet equal = new IntHashSet(100); addTwoElements(equal); final HashSet<Integer> equalCollection = new HashSet<>(equal); assertFalse(testSet.addAll(equal)); assertFalse(testSet.addAll(equalCollection)); assertContainsElements(testSet); }
@Test public void setsWithTheSameValuesHaveTheSameHashcode() { final IntHashSet other = new IntHashSet(100); addTwoElements(testSet); addTwoElements(other); assertEquals(testSet.hashCode(), other.hashCode()); }
@Test public void removingDisjointSetDoesNothing() { addTwoElements(testSet); final IntHashSet disjoint = new IntHashSet(100); disjoint.add(2); disjoint.add(1002); assertFalse(testSet.removeAll(disjoint)); assertFalse(testSet.removeAll(new HashSet<Integer>())); assertContainsElements(testSet); }
@Test public void isEmptyAfterRemovingEqualSetPrimitive() { addTwoElements(testSet); final IntHashSet equal = new IntHashSet(100); addTwoElements(equal); assertTrue(testSet.removeAll(equal)); assertTrue(testSet.isEmpty()); }
@Test public void doesNotContainSuperset() { addTwoElements(testSet); final IntHashSet superset = new IntHashSet(100); addTwoElements(superset); superset.add(15); assertFalse(testSet.containsAll(superset)); assertFalse(testSet.containsAll((Collection<?>)superset)); }
@Test public void doesNotContainDisjointSet() { addTwoElements(testSet); final IntHashSet other = new IntHashSet(100); other.add(1); other.add(1002); assertFalse(testSet.containsAll(other)); assertFalse(testSet.containsAll((Collection<?>)other)); }
@Test public void doesNotContainRemovedIntersectingSetPrimitive() { addTwoElements(testSet); final IntHashSet intersecting = new IntHashSet(100); intersecting.add(1); intersecting.add(1002); assertTrue(testSet.removeAll(intersecting)); assertTrue(testSet.contains(1001)); assertFalse(testSet.containsAll(intersecting)); }
@Test public void containsValuesAddedFromDisjointSetPrimitive() { addTwoElements(testSet); final IntHashSet disjoint = new IntHashSet(100); disjoint.add(2); disjoint.add(1002); assertTrue(testSet.addAll(disjoint)); assertTrue(testSet.contains(1)); assertTrue(testSet.contains(1001)); assertTrue(testSet.containsAll(disjoint)); }
@Test public void containsValuesAddedFromIntersectingSetPrimitive() { addTwoElements(testSet); final IntHashSet intersecting = new IntHashSet(100); intersecting.add(1); intersecting.add(1002); assertTrue(testSet.addAll(intersecting)); assertTrue(testSet.contains(1)); assertTrue(testSet.contains(1001)); assertTrue(testSet.containsAll(intersecting)); }