public void GivenCorrectInputParametersThenValidResultsAreReturned() { string input = "morning, 1, 2, 3"; IInputParser inputParser = new InputParser(); IParameters parameters = inputParser.Parse(input); Assert.AreEqual(Constants.Morning, parameters.TimeOfDay); Assert.AreEqual(3, parameters.Dishes.Count); }
public static void ProcessMeal(string input) { IList<string> output = new List<string>(); try { IInputParser inputParser = new InputParser(); IParameters parameters = inputParser.Parse(input); IDictionary<int, string> mealMap = MealMapFactory.Create(parameters.TimeOfDay); IMealFactory mealFactory = MealFactory.Create(parameters.TimeOfDay); IRuleSet rule = mealFactory.GetRules(mealMap, parameters.Dishes, output); rule.Execute(); } catch (Exception e) { if (output.Count == 0) output.Add(e.Message); Debug.WriteLine(string.Format("Exception: {0}", e.Message)); } finally { Print(output); } }
public void GivenInvalidInputThenAnExceptionIsThrown(string input) { IInputParser inputParser = new InputParser(); inputParser.Parse(input); }