示例#1
0
 def test_long(self):
     """ Test that find_anagrams runs in 1/10 of a second or faster. """
     time = Timer(lambda: find_anagrams(self.long)).timeit(number=1)
     self.assertTrue(
         round(time, 3) <= 0.10,
         "find_anagrams ran in {}, which exceeds the "
         "threshhold of 0.10 seconds".format(round(time, 3)))
示例#2
0
 def run_find_anagrams(self, word_list, benchmark):
     my_time = Timer(lambda: find_anagrams(word_list)).timeit(number=1)
     my_time = round(my_time, 3)
     failure_text = (
         'find_anagrams took {} seconds, which exceeds the '
         'benchmark of {} seconds'.format(my_time, benchmark)
     )
     self.assertTrue(my_time <= benchmark, failure_text)
示例#3
0
def test_find_anagrams_of_word_does_not_exist():
    eq_(anagrams.find_anagrams("cba", ("aaa", "asc")), [])
 def test_anagrams(self):
     self.assertEqual(find_anagrams(['cat', 'dog', 'act']), {
         'dgo': ['dog'],
         'act': ['cat', 'act']
     })
示例#5
0
def test_find_anagrams_of_word_multiple():
    eq_(anagrams.find_anagrams("cba", ("aaa", "abc", "bca")), ["abc", "bca"])
示例#6
0
def test_find_anagrams_of_word_word_itself():
    eq_(anagrams.find_anagrams("cba", ("cba", "abc")), ["cba", "abc"])
示例#7
0
def test_find_anagrams_of_word():
    eq_(anagrams.find_anagrams("cba", ("aaa", "abc")), ["abc"])
示例#8
0
 def test_anagrams_empty(self):
     words = ['rose', 'bike', 'spaghetti', 'bad', 'dog']
     anagrams = find_anagrams(words)
     self.assertEqual(anagrams, [])
示例#9
0
 def test_anagrams(self):
     words = ['rose', 'bike', 'sore', 'spaghetti', 'bad', 'dog', 'god']
     anagrams = find_anagrams(words)
     self.assertEqual(anagrams, [['rose', 'sore'], ['dog', 'god']])