예제 #1
0
        public void BloomFilterSearchMethod_MatchesExpectedWord_IsTrue()
        {
            //Arrange
            const string expectedWord1 = "Abderian's";
            const string expectedWord2 = "telangiectasias";
            const string expectedWord3 = "événements";
            const string expectedWord4 = "maw's";
            const string expectedWord5 = "liquidizer's";

            var listOfWords = new WordDownloader();
            var bloomFilter = new BloomFilter();

            //Act
            foreach (var word in listOfWords.Words)
            {
                bloomFilter.SetValueInBloomFilter(word);
            }

            //Assert
            Assert.IsTrue(bloomFilter.SearchValueInBloomFilter(expectedWord1));
            Assert.IsTrue(bloomFilter.SearchValueInBloomFilter(expectedWord2));
            Assert.IsTrue(bloomFilter.SearchValueInBloomFilter(expectedWord3));
            Assert.IsTrue(bloomFilter.SearchValueInBloomFilter(expectedWord4));
            Assert.IsTrue(bloomFilter.SearchValueInBloomFilter(expectedWord5));
        }
예제 #2
0
        public void BloomFilterSearchMethod_DoesntFindExpectedWord_IsUsuallyFalse()
        {
            //I use the term usually false as there is always a chance of a false positive
            //Arrange
            const string expectedWord1 = "BeastModeBarry";
            const string expectedWord2 = "BarryModeBeast";
            const string expectedWord3 = "ModeBeastBarry";
            const string expectedWord4 = "ModeBarryBeast";
            const string expectedWord5 = "BeastBarryMode";

            var listOfWords = new WordDownloader();
            var bloomFilter = new BloomFilter();

            //Act
            foreach (var word in listOfWords.Words)
            {
                bloomFilter.SetValueInBloomFilter(word);
            }

            //Assert
            Assert.IsFalse(bloomFilter.SearchValueInBloomFilter(expectedWord1));
            Assert.IsFalse(bloomFilter.SearchValueInBloomFilter(expectedWord2));
            Assert.IsFalse(bloomFilter.SearchValueInBloomFilter(expectedWord3));
            Assert.IsFalse(bloomFilter.SearchValueInBloomFilter(expectedWord4));
            Assert.IsFalse(bloomFilter.SearchValueInBloomFilter(expectedWord5));
        }