public void AsAMotherShipIShouldAbortTheMarsRoverMissionIfThereIsInvalidDirectionForRoverPosition() { var commands = "1 1\n0 0 A"; var motherShip = new MotherShip(); motherShip.ExecuteMarsRoverMission(commands); Assert.AreEqual(Messages.RoverArgumentNullExceptionMessage, motherShip.MarsRoverMissionResult); }
public void AsAMotherShipIShouldAbortTheMarsRoverMissionIfThereIsNegativeYValueForRoverPosition() { var commands = "1 1\n0 -1 N"; var motherShip = new MotherShip(); motherShip.ExecuteMarsRoverMission(commands); Assert.AreEqual(Messages.RoverNegativePositionExceptionMessage, motherShip.MarsRoverMissionResult); }
public void AsAMotherShipIShouldAbortTheMarsRoverMissionIfICannotInitiateTheTerrain() { var commands = "0 1"; var motherShip = new MotherShip(); motherShip.ExecuteMarsRoverMission(commands); Assert.AreEqual(Messages.TerrainInvalidInitializationValueExceptionMessage, motherShip.MarsRoverMissionResult); }
public void AsAMotherShipIShouldReceiveValidTextCommandsAndExecuteTheMarsRoverMission() { var commands = "5 5\n1 2 N\nLMLMLMLMM\n3 3 E\nMMRMMRMRRM"; var expectedOutput = "1 3 N\n5 1 E"; var motherShip = new MotherShip(); motherShip.ExecuteMarsRoverMission(commands); Assert.AreEqual(expectedOutput, motherShip.MarsRoverMissionResult); }