Esempio n. 1
0
 def test_point_in_planetau(self):
     """Check if point is in planetau"""
     planetau = Planetau(utils.Coordinates2D(5, 100))
     self.assertEqual(True, utils.Coordinates2D(5, 100) in planetau)
     self.assertEqual(False, utils.Coordinates2D(100, 5) in planetau)
     self.assertEqual(False, utils.Coordinates2D(-100, 5) in planetau)
     self.assertEqual(False, utils.Coordinates2D(100, -5) in planetau)
     self.assertEqual(False, "str" in planetau)
Esempio n. 2
0
    def test_send_command_move_valid(self):
        """Check movind on 1 step according to direction"""
        rc = RoverController(self._planetau, self._rover)

        rc.sendCommand("L")
        rc.sendCommand("M")
        self.assertEqual(rc.marsRover.position, utils.Coordinates2D(4, 100))
        rc.sendCommand("L")
        rc.sendCommand("M")
        self.assertEqual(rc.marsRover.position, utils.Coordinates2D(4, 99))
        rc.sendCommand("L")
        rc.sendCommand("M")
        self.assertEqual(rc.marsRover.position, utils.Coordinates2D(5, 99))
        rc.sendCommand("L")
        rc.sendCommand("M")
        self.assertEqual(rc.marsRover.position, utils.Coordinates2D(5, 100))
Esempio n. 3
0
 def test_properties(self):
     """Check setters of properties"""
     rover = Rover(utils.Coordinates2D(5, 100), "N")
     self.assertRaises(ValueError, setattr, rover, "position", "position")
     self.assertRaises(ValueError, setattr, rover, "position", 100)
     self.assertRaises(ValueError, setattr, rover, "direction", "K")
     self.assertRaises(ValueError, setattr, rover, "direction", 100)
Esempio n. 4
0
    def test_send_invalid_command(self):
        """Chek send invalid command to Rover"""
        point = utils.Coordinates2D(5, 100)
        rc = RoverController(Planetau(point), Rover(point, "N"))

        self.assertRaises(ValueError, rc.sendCommand, "X")
        self.assertRaises(ValueError, rc.sendCommand, 500)
Esempio n. 5
0
    def test_init_with_valid_input(self):
        """Check Rover with valid arguments"""
        direction = "N"
        point = utils.Coordinates2D(5, 100)
        rover = Rover(point, direction)

        self.assertEqual(rover.position, point)
        self.assertEqual(rover.direction, direction)
Esempio n. 6
0
    def parseInputs(self, data):
        """Parse test inputs"""
        coord = data.pop(0).split()

        try:
            self.planetau = Planetau(
                utils.Coordinates2D(int(coord[0]), int(coord[1])))
            while data:
                tmp = data.pop(0).split()
                rover = Rover(utils.Coordinates2D(int(tmp[0]), int(tmp[1])),
                              tmp[2])
                self.__roverControllers.append(
                    RoverController(self.planetau, rover))
                self.__commands.append(list(data.pop(0).strip()))

        except Exception as e:
            self.planetau = None
            self.__roverControllers[:]
            self.__commands[:]
            raise e
Esempio n. 7
0
 def test_init_with_invalid_input(self):
     """Check planetau with invalid arguments"""
     point = utils.Coordinates2D(-100, 100)
     planetau = Planetau(point)
     self.assertNotEqual(planetau.maxCoordinates, point)
     self.assertEqual(planetau.maxCoordinates, None)
Esempio n. 8
0
 def test_init_with_invalid_input(self):
     """Check RoverController with point out of planetau"""
     rover = Rover(utils.Coordinates2D(100, 100), self._direction)
     self.assertRaises(ValueError, RoverController, self._planetau, rover)
Esempio n. 9
0
 def setUp(self):
     """Setup parameters to test with"""
     self._point = utils.Coordinates2D(5, 100)
     self._direction = "N"
     self._planetau = Planetau(self._point)
     self._rover = Rover(self._point, self._direction)
Esempio n. 10
0
 def test_init_with_invalid_input(self):
     """Check Rover with invalid arguments"""
     self.assertRaises(ValueError, Rover, "N", "N")
     self.assertRaises(ValueError, Rover, utils.Coordinates2D(5, 100), "K")
     self.assertRaises(ValueError, Rover, "N", "K")