public void testContainsAndAdd() { FastIDSet set = new FastIDSet(); Assert.False(set.Contains(1)); set.Add(1); Assert.True(set.Contains(1)); }
public void testContains() { FastIDSet set = buildTestFastSet(); Assert.True(set.Contains(1)); Assert.True(set.Contains(2)); Assert.True(set.Contains(3)); Assert.False(set.Contains(4)); }
public void testGrow() { FastIDSet set = new FastIDSet(1); set.Add(1); set.Add(2); Assert.True(set.Contains(1)); Assert.True(set.Contains(2)); }
public void testVersusHashSet() { FastIDSet actual = new FastIDSet(1); var expected = new HashSet <int>(); //1000000 var r = RandomUtils.getRandom(); for (int i = 0; i < 1000000; i++) { double d = r.nextDouble(); var key = r.nextInt(100); if (d < 0.4) { Assert.AreEqual(expected.Contains(key), actual.Contains(key)); } else { if (d < 0.7) { Assert.AreEqual(expected.Add(key), actual.Add(key)); } else { Assert.AreEqual(expected.Remove(key), actual.Remove(key)); } Assert.AreEqual(expected.Count, actual.Count()); Assert.AreEqual(expected.Count == 0, actual.IsEmpty()); } } }
public void testRehash() { FastIDSet set = buildTestFastSet(); set.Remove(1); set.Rehash(); Assert.False(set.Contains(1)); }
public void testReservedValues() { FastIDSet set = new FastIDSet(); try { set.Add(Int64.MinValue); Assert.Fail("Should have thrown IllegalArgumentException"); } catch (ArgumentException iae) { //IllegalArgumentException // good } Assert.False(set.Contains(Int64.MinValue)); try { set.Add(long.MaxValue); Assert.Fail("Should have thrown IllegalArgumentException"); } catch (ArgumentException iae) { // good } Assert.False(set.Contains(long.MaxValue)); }
public void testClear() { FastIDSet set = new FastIDSet(); set.Add(1); set.Clear(); Assert.AreEqual(0, set.Count()); Assert.True(set.IsEmpty()); Assert.False(set.Contains(1)); }
public bool RetainAll(FastIDSet c) { bool changed = false; for (int i = 0; i < keys.Length; i++) { long k = keys[i]; if (k != NULL && k != REMOVED && !c.Contains(k)) { keys[i] = REMOVED; numEntries--; changed = true; } } return(changed); }