示例#1
0
        public void TestContains()
        {
            var testSet = new ThreadSafeSet <string>(new HashSet <string>());


            testSet.Add("a");
            Assert.IsTrue(testSet.Contains("a"), "contains valid");
            Assert.IsFalse(testSet.Contains("b"), "contains invalid");
        }
示例#2
0
        public void PathologicalHashAlgorithm()
        {
            var hs = new ThreadSafeSet <int>(Enumerable.Range(0, 1000));

            for (int i = 0; i != 1000; ++i)
            {
                Assert.IsTrue(hs.Contains(i));
            }
        }
示例#3
0
        public void CreateFromIEnum()
        {
            var setIE = new ThreadSafeSet <string>(EnumerateData());
            var setIL = new ThreadSafeSet <string>(SourceData);
            var hs    = FilledStringSet();

            Assert.AreEqual(setIE.Count, SourceDataLen);
            Assert.AreEqual(setIL.Count, SourceDataLen);
            foreach (string str in SourceData)
            {
                Assert.IsTrue(setIE.Contains(str));
                Assert.IsTrue(setIL.Contains(str));
            }
        }
示例#4
0
        public void EqualityComparer()
        {
            var hs = new ThreadSafeSet <string>(StringComparer.InvariantCultureIgnoreCase);

            hs.Add("Weißbier");
            Assert.IsTrue(hs.Contains("WEISSBIER"));
            Assert.IsTrue(hs.Contains("weissbier"));
            hs.Add("Δίος");
            Assert.AreEqual(2, hs.Count);
            Assert.IsTrue(hs.Contains("ΔΊΟΣ"));
            Assert.IsTrue(hs.Contains("δίος"));
            Assert.IsFalse(hs.Contains("δίοςδίος"));
            Assert.IsFalse(hs.Contains("Eggplant"));
            Assert.IsFalse(hs.Remove("aubergine"));
            Assert.IsTrue(hs.Remove("Δίος"));
            Assert.IsTrue(hs.Remove("WEISSBIER"));
            Assert.IsFalse(hs.Contains("WEISSBIER"));
            Assert.IsFalse(hs.Remove("WEISSBIER"));
            Assert.AreEqual(hs.Count, 0);
        }
示例#5
0
        public void EqualityComparer()
        {
            if (!StringComparer.InvariantCultureIgnoreCase.Equals("Weißbier", "WEISSBIER"))
            {
                Assert.Ignore("Bugs in Mono make this test irrelevant. When the bug is fixed, this test will run.");
            }
            var hs = new ThreadSafeSet <string>(StringComparer.InvariantCultureIgnoreCase);

            hs.Add("Weißbier");
            Assert.IsTrue(hs.Contains("WEISSBIER"));
            Assert.IsTrue(hs.Contains("weissbier"));
            hs.Add("Δίος");
            Assert.AreEqual(2, hs.Count);
            Assert.IsTrue(hs.Contains("ΔΊΟΣ"));
            Assert.IsTrue(hs.Contains("δίος"));
            Assert.IsFalse(hs.Contains("δίοςδίος"));
            Assert.IsFalse(hs.Contains("Eggplant"));
            Assert.IsFalse(hs.Remove("aubergine"));
            Assert.IsTrue(hs.Remove("Δίος"));
            Assert.IsTrue(hs.Remove("WEISSBIER"));
            Assert.IsFalse(hs.Contains("WEISSBIER"));
            Assert.IsFalse(hs.Remove("WEISSBIER"));
            Assert.AreEqual(hs.Count, 0);
        }
示例#6
0
 public bool HasCellLoaded(AbsoluteEntityCell cell)
 {
     return(visibleCells.Contains(cell));
 }