public void Constructor_Sets_Position_Degrees() { // Arrange var x = 3; var y = 4; var orientation = "E"; var degrees = 90; // Act _sut = new Robot(x, y, orientation, _instructionsParser, _grid); // Assert Assert.AreEqual(degrees, _sut.Position.Degrees); }
public void Constructor_Sets_Position_Coordinates() { // Arrange var x =3; var y= 4; var orientation = "E"; // Act _sut = new Robot(x, y, orientation, _instructionsParser, _grid); // Assert Assert.AreEqual(x, _sut.Position.Coordinate.X); Assert.AreEqual(y, _sut.Position.Coordinate.Y); }
public void ExecuteInstructions_Ignores_Unknown_Instructions() { // Arrange var expectedX = 1; var expectedY = 1; var expectedDegrees = 90; var instructions = "RXUWFRFRFRF"; _sut = new Robot(1, 1, "E", _instructionsParser, _grid); // Act var result = _sut.ExecuteInstructions(instructions); // Assert Assert.AreEqual(expectedX, result.Coordinate.X); Assert.AreEqual(expectedY, result.Coordinate.Y); Assert.AreEqual(expectedDegrees, result.Degrees); }
public void Execute_Instructions_Calls_InstructionParser_Parse() { // Arrange var instructions = "RFFL"; var mockInstructionsParser = new Mock<IInstructionsParser>(); mockInstructionsParser.Setup(x => x.Parse(It.IsAny<string>())).Returns(new List<Instruction>()).Verifiable(); _sut = new Robot(0, 0, "E", mockInstructionsParser.Object, _grid); // Act _sut.ExecuteInstructions(instructions); // Assert mockInstructionsParser.VerifyAll(); }
public void ExecuteInstructions_Returns_Position() { // Arrange var instructions = "RFFL"; _sut = new Robot(0, 0, "E", _instructionsParser, _grid); // Act var result = _sut.ExecuteInstructions(instructions); // Assert Assert.IsInstanceOf<Position>(result); }
public void ExecuteInstructions_Returns_3_3_N_For_FRRFLLFFRRFLL() { // Arrange var expectedX = 3; var expectedY = 3; var expectedDegrees = 0; var instructions = "FRRFLLFFRRFLL"; _sut = new Robot(3, 2, "N", _instructionsParser, _grid); // Act var result = _sut.ExecuteInstructions(instructions); // Assert Assert.AreEqual(expectedX, result.Coordinate.X); Assert.AreEqual(expectedY, result.Coordinate.Y); Assert.AreEqual(expectedDegrees, result.Degrees); }