예제 #1
0
        public void TurnCommandRunNegativeCommandTest(List <string> command)
        {
            var robotCommandEventArgs = new RobotCommandEventArgs(_robot, command);
            var ex = Assert.Throws(typeof(ArgumentException), () => _turnRobotCommand.Execute(robotCommandEventArgs));

            Assert.AreEqual(ex.Message, String.Format("Turn command syntax not matched.{0}Syntax: T <Angle in Decimal number>{0}Eg: T 45.8", Environment.NewLine));
            _robot.AssertWasNotCalled(x => x.Turn(Arg <double> .Is.Anything));
            Assert.AreEqual(_commandRecorder.Replay().Count, 0);
        }
예제 #2
0
        public void BeepCommandRunNegativeCommandTest(List <string> command)
        {
            var robotCommandEventArgs = new RobotCommandEventArgs(_robot, command);
            var ex = Assert.Throws(typeof(ArgumentException), () => _beepRobotCommand.Execute(robotCommandEventArgs));

            Assert.AreEqual(ex.Message, String.Format("Beep command syntax not matched.{0}Syntax: B{0}Eg: B", Environment.NewLine));
            _robot.AssertWasNotCalled(x => x.Beep());
            Assert.AreEqual(_commandRecorder.Replay().Count, 0);
        }
예제 #3
0
        public void NullorEmptyCommandRunTest(string str)
        {
            var ex = Assert.Throws(typeof(ArgumentException), () => _robotCommandHandler.Run(_robot, str));

            Assert.AreEqual(ex.Message, "Invalid command. Command cannot be blank.");
            _robot.AssertWasNotCalled(x => x.Move(Arg <double> .Is.Anything));
            _robot.AssertWasNotCalled(x => x.Turn(Arg <double> .Is.Anything));
            _robot.AssertWasNotCalled(x => x.Beep());
        }