Ejemplo n.º 1
0
 def test_different_left_to_right_word_ten_lines(self):
     puzzle = [
         'jefblpepre', 'camdcimgtc', 'oivokprjsm', 'pbwasqroua',
         'rixilelhrs', 'wolcqlirpc', 'fortranftw', 'alxhpburyi',
         'clojurermt', 'jalaycalmp'
     ]
     searchAnswer = WordSearch(puzzle).search('fortran')
     self.assertEqual(searchAnswer, (Point(0, 6), Point(6, 6)))
Ejemplo n.º 2
0
 def test_horizontal_words_different_directions(self):
     self.assertEqual(
         self.example.search('clojure'),
         (Point(0, 9), Point(6, 9))
     )
     self.assertEqual(
         self.example.search('elixir'),
         (Point(5, 4), Point(0, 4))
     )
Ejemplo n.º 3
0
 def test_multiple_words(self):
     puzzle = [
         'jefblpepre', 'camdcimgtc', 'oivokprjsm', 'pbwasqroua',
         'rixilelhrs', 'wolcqlirpc', 'fortranftw', 'alxhpburyi',
         'jalaycalmp', 'clojurermt'
     ]
     searchAnswer = WordSearch(puzzle).search('fortran')
     self.assertEqual(searchAnswer, (Point(0, 6), Point(6, 6)))
     searchAnswer = WordSearch(puzzle).search('clojure')
     self.assertEqual(searchAnswer, (Point(0, 9), Point(6, 9)))
Ejemplo n.º 4
0
 def test_different_left_to_right_word_ten_lines(self):
     puzzle = ('jefblpepre\n'
               'camdcimgtc\n'
               'oivokprjsm\n'
               'pbwasqroua\n'
               'rixilelhrs\n'
               'wolcqlirpc\n'
               'fortranftw\n'
               'alxhpburyi\n'
               'clojurermt\n'
               'jalaycalmp\n')
     searchAnswer = WordSearch(puzzle).search('fortran')
     self.assertEqual(searchAnswer, (Point(0, 6), Point(6, 6)))
Ejemplo n.º 5
0
 def test_should_locate_a_left_to_right_word_in_ten_line_grid(self):
     puzzle = WordSearch([
         "jefblpepre",
         "camdcimgtc",
         "oivokprjsm",
         "pbwasqroua",
         "rixilelhrs",
         "wolcqlirpc",
         "screeaumgr",
         "alxhpburyi",
         "jalaycalmp",
         "clojurermt",
     ])
     self.assertEqual(puzzle.search("clojure"), (Point(0, 9), Point(6, 9)))
Ejemplo n.º 6
0
 def test_multiple_words(self):
     puzzle = ('jefblpepre\n'
               'camdcimgtc\n'
               'oivokprjsm\n'
               'pbwasqroua\n'
               'rixilelhrs\n'
               'wolcqlirpc\n'
               'fortranftw\n'
               'alxhpburyi\n'
               'jalaycalmp\n'
               'clojurermt\n')
     searchAnswer = WordSearch(puzzle).search('fortran')
     self.assertEqual(searchAnswer, (Point(0, 6), Point(6, 6)))
     searchAnswer = WordSearch(puzzle).search('clojure')
     self.assertEqual(searchAnswer, (Point(0, 9), Point(6, 9)))
Ejemplo n.º 7
0
 def test_should_locate_multiple_words(self):
     puzzle = WordSearch([
         "jefblpepre",
         "camdcimgtc",
         "oivokprjsm",
         "pbwasqroua",
         "rixilelhrs",
         "wolcqlirpc",
         "fortranftw",
         "alxhpburyi",
         "jalaycalmp",
         "clojurermt",
     ])
     self.assertEqual(puzzle.search("fortran"), (Point(0, 6), Point(6, 6)))
     self.assertEqual(puzzle.search("clojure"), (Point(0, 9), Point(6, 9)))
Ejemplo n.º 8
0
 def test_should_locate_multiple_words_written_in_different_horizontal_directions(
         self):
     puzzle = WordSearch([
         "jefblpepre",
         "camdcimgtc",
         "oivokprjsm",
         "pbwasqroua",
         "rixilelhrs",
         "wolcqlirpc",
         "screeaumgr",
         "alxhpburyi",
         "jalaycalmp",
         "clojurermt",
     ])
     self.assertEqual(puzzle.search("elixir"), (Point(5, 4), Point(0, 4)))
     self.assertEqual(puzzle.search("clojure"), (Point(0, 9), Point(6, 9)))
Ejemplo n.º 9
0
 def test_should_locate_words_written_top_left_to_bottom_right(self):
     puzzle = WordSearch([
         "jefblpepre",
         "camdcimgtc",
         "oivokprjsm",
         "pbwasqroua",
         "rixilelhrs",
         "wolcqlirpc",
         "screeaumgr",
         "alxhpburyi",
         "jalaycalmp",
         "clojurermt",
     ])
     self.assertEqual(puzzle.search("clojure"), (Point(0, 9), Point(6, 9)))
     self.assertEqual(puzzle.search("elixir"), (Point(5, 4), Point(0, 4)))
     self.assertEqual(puzzle.search("ecmascript"),
                      (Point(9, 0), Point(9, 9)))
     self.assertEqual(puzzle.search("rust"), (Point(8, 4), Point(8, 1)))
     self.assertEqual(puzzle.search("java"), (Point(0, 0), Point(3, 3)))
Ejemplo n.º 10
0
 def test_different_left_to_right_word(self):
     puzzle = ['coffeelplx']
     searchAnswer = WordSearch(puzzle).search('coffee')
     self.assertEqual(searchAnswer, (Point(0, 0), Point(5, 0)))
Ejemplo n.º 11
0
 def test_left_to_right_word_different_position(self):
     puzzle = ['mtclojurer']
     searchAnswer = WordSearch(puzzle).search('clojure')
     self.assertEqual(searchAnswer, (Point(2, 0), Point(8, 0)))
Ejemplo n.º 12
0
 def test_left_to_right_word(self):
     puzzle = ['clojurermt']
     searchAnswer = WordSearch(puzzle).search('clojure')
     self.assertEqual(searchAnswer, (Point(0, 0), Point(6, 0)))
Ejemplo n.º 13
0
 def test_diagonal_upper_top_right_to_bottom_left(self):
     self.assertEqual(self.example.search('ruby'),
                      (Point(7, 5), Point(4, 8)))
Ejemplo n.º 14
0
 def test_diagonal_upper_bottom_left_to_top_right(self):
     self.assertEqual(self.example.search('lisp'),
                      (Point(2, 5), Point(5, 2)))
Ejemplo n.º 15
0
 def test_should_fail_to_locate_a_word_that_is_not_in_the_puzzle(self):
     puzzle = WordSearch([
         "jefblpepre",
         "camdcimgtc",
         "oivokprjsm",
         "pbwasqroua",
         "rixilelhrs",
         "wolcqlirpc",
         "screeaumgr",
         "alxhpburyi",
         "jalaycalmp",
         "clojurermt",
     ])
     self.assertEqual(puzzle.search("clojure"), (Point(0, 9), Point(6, 9)))
     self.assertEqual(puzzle.search("elixir"), (Point(5, 4), Point(0, 4)))
     self.assertEqual(puzzle.search("ecmascript"),
                      (Point(9, 0), Point(9, 9)))
     self.assertEqual(puzzle.search("rust"), (Point(8, 4), Point(8, 1)))
     self.assertEqual(puzzle.search("java"), (Point(0, 0), Point(3, 3)))
     self.assertEqual(puzzle.search("lua"), (Point(7, 8), Point(5, 6)))
     self.assertEqual(puzzle.search("lisp"), (Point(2, 5), Point(5, 2)))
     self.assertEqual(puzzle.search("ruby"), (Point(7, 5), Point(4, 8)))
     self.assertIsNone(puzzle.search("haskell"))
Ejemplo n.º 16
0
 def test_left_to_right_word_three_lines(self):
     puzzle = ['camdcimgtc', 'jefblpepre', 'clojurermt']
     searchAnswer = WordSearch(puzzle).search('clojure')
     self.assertEqual(searchAnswer, (Point(0, 2), Point(6, 2)))
Ejemplo n.º 17
0
 def test_should_locate_one_word_written_left_to_right(self):
     puzzle = WordSearch(["clojurermt"])
     self.assertEqual(puzzle.search("clojure"), (Point(0, 0), Point(6, 0)))
Ejemplo n.º 18
0
 def test_should_locate_the_same_word_written_left_to_right_in_a_different_position(
         self):
     puzzle = WordSearch(["mtclojurer"])
     self.assertEqual(puzzle.search("clojure"), (Point(2, 0), Point(8, 0)))
Ejemplo n.º 19
0
 def test_should_locate_a_single_word_written_right_to_left(self):
     puzzle = WordSearch(["rixilelhrs"])
     self.assertEqual(puzzle.search("elixir"), (Point(5, 0), Point(0, 0)))
Ejemplo n.º 20
0
 def test_should_locate_a_left_to_right_word_in_three_line_grid(self):
     puzzle = WordSearch(["camdcimgtc", "jefblpepre", "clojurermt"])
     self.assertEqual(puzzle.search("clojure"), (Point(0, 2), Point(6, 2)))
Ejemplo n.º 21
0
 def test_should_locate_a_left_to_right_word_in_two_line_grid(self):
     puzzle = WordSearch(["jefblpepre", "tclojurerm"])
     self.assertEqual(puzzle.search("clojure"), (Point(1, 1), Point(7, 1)))
Ejemplo n.º 22
0
 def test_should_locate_that_different_left_to_right_word_in_a_different_position(
         self):
     puzzle = WordSearch(["xcoffeezlp"])
     self.assertEqual(puzzle.search("coffee"), (Point(1, 0), Point(6, 0)))
Ejemplo n.º 23
0
 def test_different_left_to_right_word_different_position(self):
     puzzle = ['xcoffeezlp']
     searchAnswer = WordSearch(puzzle).search('coffee')
     self.assertEqual(searchAnswer, (Point(1, 0), Point(6, 0)))
Ejemplo n.º 24
0
 def test_diagonal_words_top_left_to_bottom_right(self):
     self.assertEqual(self.example.search('java'),
                      (Point(0, 0), Point(3, 3)))
Ejemplo n.º 25
0
 def test_left_to_right_word_two_lines(self):
     puzzle = ['jefblpepre', 'tclojurerm']
     searchAnswer = WordSearch(puzzle).search('clojure')
     self.assertEqual(searchAnswer, (Point(1, 1), Point(7, 1)))
Ejemplo n.º 26
0
 def test_diagonal_upper_bottom_right_to_top_left(self):
     self.assertEqual(self.example.search('lua'),
                      (Point(7, 8), Point(5, 6)))
Ejemplo n.º 27
0
 def test_vertical_words_bottom_to_top(self):
     self.assertEqual(self.example.search('rust'),
                      (Point(8, 4), Point(8, 1)))
Ejemplo n.º 28
0
 def test_should_locate_a_different_left_to_right_word(self):
     puzzle = WordSearch(["coffeelplx"])
     self.assertEqual(puzzle.search("coffee"), (Point(0, 0), Point(5, 0)))
Ejemplo n.º 29
0
 def test_single_word_right_to_left(self):
     puzzle = ['rixilelhrs']
     searchAnswer = WordSearch(puzzle).search('elixir')
     self.assertEqual(searchAnswer, (Point(5, 0), Point(0, 0)))
Ejemplo n.º 30
0
 def test_vertical_words_top_to_bottom(self):
     self.assertEqual(self.example.search('ecmascript'),
                      (Point(9, 0), Point(9, 9)))