public void ExecuteInput_With_Direction_Commands_And_Position_Being_Set(int x, int y, string inputDirection, string inputcommand, int expectedXcoordinate, int expectedYCoordinate, string expectedDirection) { //Arrange ICardinalDirection direction = null; switch (inputDirection) { case "East": direction = new East(_grid); break; case "North": direction = new North(_grid); break; case "West": direction = new West(_grid); break; case "South": direction = new South(_grid); break; } var rover = new Rover(_grid, _commandList); //Act _grid.ValidateInputCoordinates(x, y); rover.SetDirection(direction); rover.ExecuteCommands(inputcommand); //Assert Assert.That(rover.CoordinateX, Is.EqualTo(expectedXcoordinate)); Assert.That(rover.CoordinateY, Is.EqualTo(expectedYCoordinate)); Assert.That(rover.Direction.ToString(), Is.EqualTo(expectedDirection)); }
public void TurnRight() { Direction = Direction.TurnRight(); }
public void TurnLeft() { Direction = Direction.TurnLeft(); }
public ICardinalDirection SetDirection(ICardinalDirection direction) { Direction = direction; return(Direction); }