public void Do_UnknownState_CommandIgnored() { var robotSimulator = new ToyRobotSimulator(mockRobot.Object, mockParser.Object, mockTabletop.Object); mockParser.Setup(m => m.ParseCommand("REPORT")).Returns(new ToyCommand { Command = Command.Report }); var result = robotSimulator.Do("REPORT"); Assert.False(result); }
public void Do_PlaceCommand_InvalidPlace_CommandIgnored() { var robotSimulator = new ToyRobotSimulator(mockRobot.Object, mockParser.Object, mockTabletop.Object); mockParser.Setup(m => m.ParseCommand("PLACE 7,5,N")).Returns(new Domain.ToyCommand { Command = Domain.Command.Place, CommandParameter = new PlaceParameter { Direction = Direction.North, X = 7, Y = 7 } }); mockTabletop.Setup(m => m.IsValidPosition(7, 5)).Returns(false); var result = robotSimulator.Do("PLACE 7,5,N"); Assert.False(result); }
public void Do_MoveCommand_InvalidPlace_CommandIgnored() { var robotSimulator = new ToyRobotSimulator(mockRobot.Object, mockParser.Object, mockTabletop.Object); mockParser.Setup(m => m.ParseCommand("MOVE")).Returns(new ToyCommand { Command = Command.Move }); mockRobot.SetupGet(g => g.Position).Returns(new Position { X = 5, Y = 5 }); mockRobot.Setup(m => m.CalculateNextPosition()).Returns(new Position { X = 5, Y = 6 }); mockTabletop.Setup(m => m.IsValidPosition(5, 6)).Returns(false); var result = robotSimulator.Do("MOVE"); Assert.False(result); }