示例#1
0
        public static IAction GetAction(RoverAction rAction)
        {
            IAction action;

            switch (rAction)
            {
            case RoverAction.L:
                action = new TurnLeftAction();
                break;

            case RoverAction.R:
                action = new TurnRightAction();
                break;

            case RoverAction.M:
                action = new MoveForwardAction();
                break;

            default:
                action = new NoAction();
                break;
            }

            return(action);
        }
示例#2
0
        public void TurnLeftTest()
        {
            var marsRover = new MarsRover("5 5");

            marsRover.UpdateValues("1 2 N");
            var turnLeftAction = new TurnLeftAction();

            turnLeftAction.Action(marsRover);
            Assert.Equal("1 2 W", marsRover.RunAndGetResult());
        }