private void ParseCommands(string[] commands)
        {
            foreach (var command in commands)
            {
                var commandData = new CommandData();
                if (command.Contains("PLACE"))
                {
                    if (CommandValidation.IsPlaceCommandValid(command))
                    {
                        var split  = command.Split(' ');
                        var values = split[1].Split(',');
                        commandData.X = Convert.ToInt16(values[ReadedXPosition]);
                        commandData.Y = Convert.ToInt16(values[ReadedYPosition]);

                        commandData.commandType = CommandTypes.PLACE;
                        var parseSuccess = Enum.TryParse(values[ReadedFacingPosition], out commandData.FacingDirection);
                        if (!parseSuccess)
                        {
                            continue;
                        }
                    }
                }
                else
                {
                    var parseSuccess = Enum.TryParse(command, out commandData.commandType);
                    if (!parseSuccess)
                    {
                        continue;
                    }
                }
                CommandsQueue.Enqueue(commandData);
            }
        }
Esempio n. 2
0
        public void TestCommandObjectCreation()
        {
            CommandValidation coc = new CommandValidation();
            var response          = coc.Validate("import yogesh 1.json");

            Assert.IsTrue(response.Length == 3);
        }
 public bool HasInvalidCommand(CommandValidation value)
 {
     if (!value.IsValid)
     {
         ErrorsCommandValidation = value.Errors;
         return(true);
     }
     return(false);
 }