def test_run(self): layer = self.load_layer(2) detector = Map_Directions_Detector() result_dirs, result_lengths, result_start = detector.run(layer) expected_dirs = [RIGHT, UP, LEFT, UP, RIGHT, DOWN] expected_lengths = [7, 3, 4, 3, 7, 10] expected_start = (0, 8) self.assertListEqual(expected_dirs, result_dirs) self.assertListEqual(result_lengths, expected_lengths) self.assertEqual(expected_start, result_start)
def test_find_start(self): layer = self.load_layer(0) detector = Map_Directions_Detector() start, direction = detector.find_start(layer) self.assertEqual(start, (11, 0)) self.assertEqual(direction, DOWN) layer = self.load_layer(2) detector = Map_Directions_Detector() start, direction = detector.find_start(layer) self.assertEqual(start, (0, 8)) self.assertEqual(direction, RIGHT)
def test_find_next_dir(self): layer = self.load_layer(0) detector = Map_Directions_Detector() start, direction = (11, 0), DOWN next_pos, next_dir = detector.find_next_dir(layer, start, direction) self.assertEqual(next_pos, (11, 1)) self.assertEqual(next_dir, DOWN) start, direction = (11, 2), DOWN next_pos, next_dir = detector.find_next_dir(layer, start, direction) self.assertEqual(next_pos, (10, 2)) self.assertEqual(next_dir, LEFT)