Beispiel #1
0
 def test_prefix_search(self):
     strings = ["abc", "ab", "a"]
     triedict = TrieDict()
     for i, s in enumerate(strings):
         triedict.add_pattern(s, i+1)
     #print triedict.prefix_search("a")
     matched = triedict.prefix_search("")
     assert len(matched) == 0
     matched = triedict.prefix_search("abc")
     assert len(matched) == 1
     assert matched[0][0] == ""
     assert matched[0][1] == 1
     matched = triedict.prefix_search("a")
     matched.sort(key=lambda x: x[0])
     assert len(matched) == 3
     assert matched[0][0] == ""
     assert matched[0][1] == 3
     assert matched[1][0] == "b"
     assert matched[1][1] == 2
     assert matched[2][0] == "bc"
     assert matched[2][1] == 1