Пример #1
0
 def test_example1(self):
     vectorsA = ["R8", "U5", "L5", "D3"]
     vectorsB = ["U7", "R6", "D4", "L4"]
     self.assertEqual(
         Point(
             3, 3), find_nearest_intersection(
             vectorsA, vectorsB).get_point())
Пример #2
0
 def test_unit_180(self):
     origin = Point(0, 0)
     up = Point(0, 1)
     down = Point(0, -1)
     left = Point(-1, 0)
     right = Point(1, 0)
     clockwise = TurnDirection.RIGHT
     counterclockwise = TurnDirection.LEFT
     self.assertEqual(down, rotate(origin, up, clockwise, 180))
     self.assertEqual(up, rotate(origin, down, clockwise, 180))
     self.assertEqual(right, rotate(origin, left, clockwise, 180))
     self.assertEqual(left, rotate(origin, right, clockwise, 180))
     self.assertEqual(down, rotate(origin, up, counterclockwise, 180))
     self.assertEqual(up, rotate(origin, down, counterclockwise, 180))
     self.assertEqual(right, rotate(origin, left, counterclockwise, 180))
     self.assertEqual(left, rotate(origin, right, counterclockwise, 180))
Пример #3
0
 def test_example3(self):
     vectorsA = [
         "R98",
         "U47",
         "R26",
         "D63",
         "R33",
         "U87",
         "L62",
         "D20",
         "R33",
         "U53",
         "R51"]
     vectorsB = [
         "U98",
         "R91",
         "D20",
         "R16",
         "D67",
         "R40",
         "U7",
         "R15",
         "U6",
         "R7"]
     self.assertEqual(
         Point(
             124, 11), find_nearest_intersection(
             vectorsA, vectorsB).get_point())
Пример #4
0
 def test_example2(self):
     vectorsA = [
         "R75",
         "D30",
         "R83",
         "U83",
         "L12",
         "D49",
         "R71",
         "U7",
         "L72"]
     vectorsB = ["U62", "R66", "U55", "R34", "D71", "R55", "D58", "R83"]
     self.assertEqual(
         Point(
             155, 4), find_nearest_intersection(
             vectorsA, vectorsB).get_point())
Пример #5
0
 def test_Manhattan(self):
     self.assertEqual(Point(0, 0).manhattan_distance(), 0)
     self.assertEqual(Point(0, 1).manhattan_distance(), 1)
     self.assertEqual(Point(2, 2).manhattan_distance(), 4)
     self.assertEqual(Point(3, 2).manhattan_distance(), 5)
     self.assertEqual(Point(-3, 2).manhattan_distance(), 5)
Пример #6
0
 def test_example(self):
     origin = Point(0, 0)
     start = Point(10, 4)
     final = Point(4, -10)
     clockwise = TurnDirection.RIGHT
     self.assertEqual(final, rotate(origin, start, clockwise, 90))
Пример #7
0
    def test_Repeats_ObjectSort(self):
        listA = [Point(1, 1), Point(2, 2), Point(0, 1)]
        listB = [Point(3, 3), Point(1, 1), Point(0, 1)]

        self.assertListEqual(non_sorted_intersection(listA, listB),
                             [Point(0, 1), Point(1, 1)])
Пример #8
0
 def test_move_by_waypoint_step_five(self):
     directions = ["F10", "U3", "F7", "C90", "F11"]
     end_point = move_by_waypoint(directions)
     self.assertEqual(end_point, Point(214, -72))
Пример #9
0
 def test_move_by_waypoint_step_four(self):
     directions = ["F10", "U3", "F7", "C90"]
     end_point = move_by_waypoint(directions)
     self.assertEqual(end_point, Point(170, 38))
Пример #10
0
 def test_move_by_waypoint_step_two(self):
     directions = ["F10", "U3"]
     end_point = move_by_waypoint(directions)
     self.assertEqual(end_point, Point(100, 10))
Пример #11
0
 def test_move_by_waypoint_forward(self):
     directions = ["F10"]
     end_point = move_by_waypoint(directions)
     self.assertEqual(end_point, Point(100, 10))