public void ShouldGenerateWeeklyMenuThatHasTwoLunchesWith4TuppersAtLeast() { IWeeklyMenuFactory factory = new WeeklyMenuFactory(_repository); var result = factory.GetWeeklyMenu(); Assert.That(result.Where(x => x.Menu.Lunch.Tuppers > 2).Count(), Is.GreaterThanOrEqualTo(2)); }
public void ShouldEnsureThatTwo4TupperLunchesRepeatInTheWeeklyMenu() { IWeeklyMenuFactory factory = new WeeklyMenuFactory(_repository); var result = factory.GetWeeklyMenu(); Assert.That(result.Where(x => x.Menu.Lunch.Tuppers > 2 && x.Menu.Lunch.Id == result[0].Menu.Lunch.Id).Count(), Is.GreaterThanOrEqualTo(2)); Assert.That(result.Where(x => x.Menu.Lunch.Tuppers > 2 && x.Menu.Lunch.Id == result[1].Menu.Lunch.Id).Count(), Is.GreaterThanOrEqualTo(2)); }
public void ShouldGenerateWeeklyMenuThatComesFromTheRepository() { IWeeklyMenuFactory factory = new WeeklyMenuFactory(_repository); var result = factory.GetWeeklyMenu(); Assert.That(result[0].Menu.Lunch.Name, Does.StartWith("Lunch")); Assert.That(result[0].Menu.Dinner.Name, Does.StartWith("Dinner")); }
public void ShouldGenerateWeeklyMenu() { IWeeklyMenuFactory factory = new WeeklyMenuFactory(_repository); var result = factory.GetWeeklyMenu(); Assert.That(result, Is.InstanceOf <List <DailyMenu> >()); Assert.That(result.Count, Is.EqualTo(7)); }
public void ShouldGenerateWeeklyMenuThatWontRepeatMoreThanTwoLunches() { IWeeklyMenuFactory factory = new WeeklyMenuFactory(_repository); var result = factory.GetWeeklyMenu(); Assert.That(result.Where(x => x.Menu.Lunch.Id == result[0].Menu.Lunch.Id).Count(), Is.LessThan(3)); Assert.That(result.Where(x => x.Menu.Lunch.Id == result[1].Menu.Lunch.Id).Count(), Is.LessThan(3)); Assert.That(result.Where(x => x.Menu.Lunch.Id == result[2].Menu.Lunch.Id).Count(), Is.LessThan(3)); Assert.That(result.Where(x => x.Menu.Lunch.Id == result[3].Menu.Lunch.Id).Count(), Is.LessThan(3)); Assert.That(result.Where(x => x.Menu.Lunch.Id == result[4].Menu.Lunch.Id).Count(), Is.LessThan(3)); Assert.That(result.Where(x => x.Menu.Lunch.Id == result[5].Menu.Lunch.Id).Count(), Is.LessThan(3)); Assert.That(result.Where(x => x.Menu.Lunch.Id == result[6].Menu.Lunch.Id).Count(), Is.LessThan(3)); }
public void ShouldGenerateWeeklyMenuThatWontRepeatTwoConsecutiveLunches() { IWeeklyMenuFactory factory = new WeeklyMenuFactory(_repository); var result = factory.GetWeeklyMenu(); //Will apply only to the current week, next monday doesn´t count as repetition. Assert.That(result[0].Menu.Lunch.Name, Is.Not.EqualTo(result[1].Menu.Lunch.Name)); Assert.That(result[1].Menu.Lunch.Name, Is.Not.EqualTo(result[2].Menu.Lunch.Name)); Assert.That(result[2].Menu.Lunch.Name, Is.Not.EqualTo(result[3].Menu.Lunch.Name)); Assert.That(result[3].Menu.Lunch.Name, Is.Not.EqualTo(result[4].Menu.Lunch.Name)); Assert.That(result[4].Menu.Lunch.Name, Is.Not.EqualTo(result[5].Menu.Lunch.Name)); Assert.That(result[5].Menu.Lunch.Name, Is.Not.EqualTo(result[6].Menu.Lunch.Name)); }