示例#1
0
        public void TrieTest_AddSeveralFindWild2()
        {
            ITrie trie = new TrieWithNoChildren();

            trie = trie.Add("bat");
            trie = trie.Add("ball");
            Assert.That(trie.WildcardSearch("b?t?"), Is.False);
        }
示例#2
0
        public void TestCAddEmptyAndShortWordLookUpEmpty()
        {
            ITrie t = new TrieWithNoChildren();

            t = t.Add("");
            t = t.Add("i");
            Assert.That(t.Contains(""), Is.True);
        }
示例#3
0
        public void TestFAddDifferentLetterCheckType()
        {
            ITrie t = new TrieWithNoChildren();

            t = t.Add("i");
            t = t.Add("ice");
            t = t.Add("cream");
            Assert.That(t, Is.TypeOf(typeof(TrieWithManyChildren)));
        }
示例#4
0
        public void TrieTest_AddSeveralFindWild4()
        {
            ITrie trie = new TrieWithNoChildren();

            trie = trie.Add("banana");
            trie = trie.Add("balloon");
            trie = trie.Add("banter");
            Assert.That(trie.WildcardSearch("b?n?n?"), Is.True);
        }
示例#5
0
        public void TrieTest_AddSeveralFindWild3()
        {
            ITrie trie = new TrieWithNoChildren();

            trie = trie.Add("bat");
            trie = trie.Add("ball");
            trie = trie.Add("sale");
            Assert.That(trie.WildcardSearch("?a?e"), Is.True);
        }
示例#6
0
        public void TestFAddEmptyAndDifferentLetterLookUpEmpty()
        {
            ITrie t = new TrieWithNoChildren();

            t = t.Add("");
            t = t.Add("i");
            t = t.Add("ice");
            t = t.Add("cream");
            Assert.That(t.Contains(""), Is.EqualTo(true));
        }
示例#7
0
        public void TestELookupAllPrefixes2()
        {
            ITrie t = new TrieWithNoChildren();

            t = t.Add("i");
            t = t.Add("ice");
            StringBuilder sb = new StringBuilder();

            sb.Append(t.Contains(""));
            sb.Append(t.Contains("i"));
            sb.Append(t.Contains("ic"));
            sb.Append(t.Contains("ice"));
            Assert.That(sb.ToString(), Is.EqualTo("FalseTrueFalseTrue"));
        }
示例#8
0
        public void TestFAddDifferentLetterLookUpAll()
        {
            ITrie t = new TrieWithNoChildren();

            t = t.Add("i");
            t = t.Add("ice");
            t = t.Add("cream");
            StringBuilder sb = new StringBuilder();

            sb.Append(t.Contains(""));
            sb.Append(t.Contains("i"));
            sb.Append(t.Contains("ice"));
            sb.Append(t.Contains("cream"));
            Assert.That(sb.ToString, Is.EqualTo("FalseTrueTrueTrue"));
        }
示例#9
0
        public void TestBAddEmptyLookItUp()
        {
            ITrie t = new TrieWithNoChildren();

            t = t.Add("");
            Assert.That(t.Contains(""), Is.True);
        }
示例#10
0
        public void TestBAddEmptyCheckType()
        {
            ITrie t = new TrieWithNoChildren();

            t = t.Add("");
            Assert.That(t, Is.TypeOf(typeof(TrieWithNoChildren)));
        }
示例#11
0
        public void TestDAddWordLookUpPrefix()
        {
            ITrie t = new TrieWithNoChildren();

            t = t.Add("word");
            Assert.That(t.Contains("wo"), Is.False);
        }
示例#12
0
        public void TestDAddLongWordLookItUp()
        {
            ITrie t = new TrieWithNoChildren();

            t = t.Add("word");
            Assert.That(t.Contains("word"), Is.True);
        }
示例#13
0
        public void TrieTest_AddTwoOneWild()
        {
            ITrie trie = new TrieWithNoChildren();

            trie = trie.Add("an");
            Assert.That(trie.WildcardSearch("?"), Is.False);
        }
示例#14
0
        /// <summary>
        /// Gets a trie of names
        /// </summary>
        /// <param name="names">a dictionary used to create the trie</param>
        /// <returns>the trie created</returns>
        public static ITrie GetNamesTrie(Dictionary <string, List <Employee> > names)
        {
            ITrie trie = new TrieWithNoChildren();

            foreach (string s in names.Keys)
            {
                trie = trie.Add(s);
            }
            return(trie);
        }
示例#15
0
        public void TestBAddInvalid2()
        {
            Exception e = null;
            ITrie     t = new TrieWithNoChildren();

            try
            {
                t = t.Add("{");
            }
            catch (Exception ex)
            {
                e = ex;
            }
            Assert.That(e, Is.Not.Null.And.TypeOf(typeof(ArgumentException)));
        }
示例#16
0
        public void TestCAddShortWordCheckType()
        {
            ITrie t = new TrieWithNoChildren();

            t = t.Add("i");
        }