public string Execute(int row, int col, IEnumerable <string> commands) { var toyRobot = new Data.ToyRobot(new Matrix(col, row)); string output = default; foreach (var command in commands) { var validationResult = _commandValidatorFactory.Execute(command); var executeResult = validationResult?.Execute(toyRobot); if (executeResult == default) { continue; } output = executeResult; } return(output); }
public override string Execute(Data.ToyRobot robot) { if (!robot.IsActive) { return(default);
public abstract string Execute(Data.ToyRobot robot);
public override string Execute(Data.ToyRobot robot) => robot.IsActive ? $"{robot.Coordinate.X},{robot.Coordinate.Y},{robot.CardinalDirection}".ToUpper() : default;