bag2.add("C");
assertEquals(true, bag.equals(bag2));
}
public void testHashCode() {
Bag bag = makeBag();
Bag bag2 = makeBag();
assertEquals(0, bag.hashCode());
assertEquals(0, bag2.hashCode());
assertEquals(bag.hashCode(), bag2.hashCode());
bag.add("A");
bag.add("A");
bag.add("B");
bag.add("B");
bag.add("C");
bag2.add("A");
bag2.add("A");
bag2.add("B");
bag2.add("B");
bag2.add("C");
assertEquals(bag.hashCode(), bag2.hashCode());
int total = 0;
total += ("A".hashCode() ^ 2);
total += ("B".hashCode() ^ 2);
total += ("C".hashCode() ^ 1);
assertEquals(total, bag.hashCode());
assertEquals(total, bag2.hashCode());
}