Пример #1
0
def test__word_ladder_fuzz():
    with open('words5.dict') as f:
        words = f.readlines()
        words = list(set([word.strip() for word in words]))
    for i in range(20):
        word1 = random.choice(words)
        word2 = random.choice(words)
        res1 = word_ladder(word1, word2)
        if res1 is not None:
            res2 = word_ladder(word2, word1)
            assert res1 is None and res2 is None or len(res1) == len(res2)
Пример #2
0
    def test_no_path(self):
        start = 'hit'
        end = 'cog'
        words = ["hot", "dot", "dog", "lot", "log"]
        result = word_ladder(start, end, words)

        self.assertFalse(result)
Пример #3
0
    def test_word_ladder(self):
        start = 'hit'
        end = 'cog'
        words = ["hot", "dot", "dog", "lot", "log", "cog"]
        result = word_ladder(start, end, words)

        result_set = [set(r) for r in result]
        self.assertIn(set(["hit", "hot", "dot", "dog", "cog"]), result_set)
        self.assertIn(set(["hit", "hot", "lot", "log", "cog"]), result_set)
Пример #4
0
 def test_word_ladder_w_out_path(self):
     start = 'hit'
     end = 'bag'
     res = word_ladder(start, end, self.words)
     self.assertIsNone(res)
Пример #5
0
def test__word_ladder_7():
    ladder = word_ladder('babes', 'child')
    assert verify_word_ladder(ladder) and len(ladder) == 9
Пример #6
0
def test__word_ladder_6():
    ladder = word_ladder('phone', 'stone')
    assert verify_word_ladder(ladder) and len(ladder) == 3
Пример #7
0
def test__word_ladder_4():
    ladder = word_ladder('dears', 'fears')
    assert verify_word_ladder(ladder) and len(ladder) == 2
Пример #8
0
def test__word_ladder_2():
    ladder = word_ladder('aloof', 'aloof')
    assert verify_word_ladder(ladder) and len(ladder) == 1
Пример #9
0
def test__word_ladder_17():
    assert word_ladder('data', 'structures') is None
Пример #10
0
def test__word_ladder_16():
    assert word_ladder('aloof', 'money') is None
Пример #11
0
def test__word_ladder_15():
    assert word_ladder('atlas', 'zebra') is None
Пример #12
0
def test__word_ladder_14():
    ladder = word_ladder('money', 'stone')
    assert verify_word_ladder(ladder) and len(ladder) == 10
Пример #13
0
def test__word_ladder_12():
    ladder = word_ladder('smart', 'money')
    assert verify_word_ladder(ladder) and len(ladder) == 11
Пример #14
0
def test__word_ladder_10():
    ladder = word_ladder('angel', 'devil')
    assert verify_word_ladder(ladder) and len(ladder) == 9
Пример #15
0
def test__word_ladder_16b():
    assert word_ladder('money', 'aloof') is None
Пример #16
0
def test__word_ladder_15b():
    assert word_ladder('zebra', 'atlas') is None