Exemplo n.º 1
0
        public void TestCommandTurnExecuteValidateParameters()
        {
            Robot robot   = new Robot(2);
            var   command = new TurnCommand(true);

            command.Execute(robot, "A,B,C");
        }
Exemplo n.º 2
0
        public void Execute_ShouldInvokeTurnOnRobot()
        {
            IProgramCommand command   = new TurnCommand(90);
            var             robotMock = new Mock <IRobot>();

            command.Execute(robotMock.Object);

            robotMock.Verify(x => x.Turn(90), Times.Once);
        }
Exemplo n.º 3
0
 private void AddTurnCommand(int facingDirection)
 {
     if (CanTurn(facingDirection))
     {
         TurnCommand command = new TurnCommand(gameObject, facingDirection, (int)m_FacingDirection);
         command.Execute();
         CommandStackProxy.Get().PushCommand(command);
     }
 }
Exemplo n.º 4
0
        public void Execute_CallsCorrectMethod()
        {
            const double TurnAngle   = -2.75D;
            var          robotMock   = new Mock <IRobot>();
            var          turnCommand = new TurnCommand(robotMock.Object, TurnAngle);

            turnCommand.Execute();

            robotMock.Verify(c => c.Turn(It.Is <double>(d => d == TurnAngle)), Times.Once());
        }
Exemplo n.º 5
0
        public void TestCommandTurnExecuteAntiClockwise()
        {
            Robot robot = new Robot(2);

            robot.SetPosition(1, 1);
            robot.SetBearing("NORTH");

            var command = new TurnCommand(false);

            command.Execute(robot, "");

            Assert.AreEqual(1, robot.xPos);
            Assert.AreEqual(1, robot.yPos);
            Assert.AreEqual("WEST", robot.bearing);
        }