public void ParseAndProcessData(string line) { line = Regex.Replace(line, @"\s+", " "); //TODO:Can add all patterns of statement in a list and //loop through to find match instead of following foreach (var pattern in InputPatternsAndCommandHandlersMap.GetinputPatterns()) { if (Regex.IsMatch(line, pattern, RegexOptions.IgnoreCase)) { var handler = InputPatternsAndCommandHandlersMap.GetCommandHandler(pattern); handler.ProcessCommand(line); return; } } throw new InvalidCommandException(); }
public void InputPatternsAndCommandHandlersMapTestSetup() { commandPatterns = InputPatternsAndCommandHandlersMap.GetinputPatterns(); }