public void ExecuteMovementPlan_WhenMovementIsOutOfBounds_ShouldThrow() { var plateau = new Plateau(new Coordinate(5, 5)); var rover = new Rover("1 2 E", plateau); var movementPlan = "MMMMMM"; Assert.ThrowsException <InvalidMovementException>(() => RoverController.ExecuteMovementPlan(movementPlan, rover, plateau)); }
public void ExecuteMovementPlan_WhenArgumentsValid_ShouldExecute() { var plateau = new Plateau(new Coordinate(5, 5)); var rover = new Rover("1 2 N", plateau); var movementPlan = "LMLMLMLMM"; var expected = new Rover("1 3 N", plateau); var actual = RoverController.ExecuteMovementPlan(movementPlan, rover, plateau); Assert.AreEqual(expected, actual, message: ""); }
public static void Main(string[] args) { Console.Write("Enter Graph Upper Right Coordinate: "); var coordinate = Console.ReadLine(); var plateau = new Plateau(RoverController.ParseCoordinate(coordinate)); for (var roverCount = 1; roverCount < 3; roverCount++) { Console.Write($"Rover {roverCount} Starting Position: "); var startPosition = Console.ReadLine(); var rover = new Rover(startPosition, plateau); Console.Write($"Rover {roverCount} Movement Plan: "); var movementPlan = Console.ReadLine(); rover = RoverController.ExecuteMovementPlan(movementPlan, rover, plateau); Console.WriteLine($"Rover {roverCount} Output: {rover}"); } Quit(); }
public void ExecuteMovementPlan_WhenPassedNullValues_ShouldThrow() { Assert.ThrowsException <ArgumentNullException>(() => RoverController.ExecuteMovementPlan(null, null, null)); }