public void OrderedHashSet_Test() { var hashSet = new OrderedHashSet <int>(); int nodeCount = 1000; //insert test for (int i = 0; i <= nodeCount; i++) { hashSet.Add(i); Assert.AreEqual(true, hashSet.Contains(i)); } //IEnumerable test using linq Assert.AreEqual(hashSet.Count, hashSet.Count()); Assert.AreEqual(hashSet.Count, hashSet.AsEnumerableDesc().Count()); for (int i = 0; i <= nodeCount; i++) { hashSet.Remove(i); Assert.AreEqual(false, hashSet.Contains(i)); } //IEnumerable test using linq Assert.AreEqual(hashSet.Count, hashSet.Count()); Assert.AreEqual(hashSet.Count, hashSet.AsEnumerableDesc().Count()); var rnd = new Random(); var testSeries = Enumerable.Range(1, nodeCount).OrderBy(x => rnd.Next()).ToList(); foreach (var item in testSeries) { hashSet.Add(item); Assert.AreEqual(true, hashSet.Contains(item)); } //IEnumerable test using linq Assert.AreEqual(hashSet.Count, hashSet.Count()); Assert.AreEqual(hashSet.Count, hashSet.AsEnumerableDesc().Count()); for (int i = 1; i <= nodeCount; i++) { hashSet.Remove(i); Assert.AreEqual(false, hashSet.Contains(i)); } //IEnumerable test using linq Assert.AreEqual(hashSet.Count, hashSet.Count()); Assert.AreEqual(hashSet.Count, hashSet.AsEnumerableDesc().Count()); }
public void ListHashSetTest() { OrderedHashSet <string> set = new OrderedHashSet <string>(); Assert.AreEqual(set.Count(), 0); CollectionAssert.AreEqual(new string[] { }, set.ToArray()); Assert.IsFalse(set.Contains("a")); Assert.IsFalse(set.Contains("b")); set.Add("b"); Assert.AreEqual(set.Count(), 1); Assert.IsFalse(set.Contains("a")); Assert.IsTrue(set.Contains("b")); CollectionAssert.AreEqual(new string[] { "b" }, set.ToArray()); set.Add("a"); Assert.AreEqual(set.Count(), 2); Assert.IsTrue(set.Contains("a")); Assert.IsTrue(set.Contains("b")); CollectionAssert.AreEqual(new string[] { "b", "a" }, set.ToArray()); set.Add("b"); Assert.AreEqual(set.Count(), 2); Assert.IsTrue(set.Contains("a")); Assert.IsTrue(set.Contains("b")); CollectionAssert.AreEqual(new string[] { "b", "a" }, set.ToArray()); Assert.AreEqual(set[0], "b"); Assert.AreEqual(set[1], "a"); set.Remove("b"); CollectionAssert.AreEqual(new string[] { "a" }, set.ToArray()); Assert.IsTrue(set.Contains("a")); Assert.IsFalse(set.Contains("b")); set.Clear(); CollectionAssert.AreEqual(new string[] {}, set.ToArray()); Assert.IsFalse(set.Contains("a")); Assert.IsFalse(set.Contains("b")); }
public void ListHashSetTest() { OrderedHashSet<string> set = new OrderedHashSet<string>(); Assert.AreEqual(set.Count(), 0); CollectionAssert.AreEqual(new string[] { }, set.ToArray()); Assert.IsFalse(set.Contains("a")); Assert.IsFalse(set.Contains("b")); set.Add("b"); Assert.AreEqual(set.Count(), 1); Assert.IsFalse(set.Contains("a")); Assert.IsTrue(set.Contains("b")); CollectionAssert.AreEqual(new string[] { "b" }, set.ToArray()); set.Add("a"); Assert.AreEqual(set.Count(), 2); Assert.IsTrue(set.Contains("a")); Assert.IsTrue(set.Contains("b")); CollectionAssert.AreEqual(new string[] { "b", "a" }, set.ToArray()); set.Add("b"); Assert.AreEqual(set.Count(), 2); Assert.IsTrue(set.Contains("a")); Assert.IsTrue(set.Contains("b")); CollectionAssert.AreEqual(new string[] { "b", "a" }, set.ToArray()); Assert.AreEqual(set[0], "b"); Assert.AreEqual(set[1], "a"); set.Remove("b"); CollectionAssert.AreEqual(new string[] { "a" }, set.ToArray()); Assert.IsTrue(set.Contains("a")); Assert.IsFalse(set.Contains("b")); set.Clear(); CollectionAssert.AreEqual(new string[] {}, set.ToArray()); Assert.IsFalse(set.Contains("a")); Assert.IsFalse(set.Contains("b")); }