public void Should_has_no_dishes_when_the_tryAddDish_not_called_first()
        {
            //arrange
            using (var dishesMenuService = new DishesMenuService())
            {
                var tuple = (TimeOfDayType.Morning, DishType.Entree);
                var dish  = new Dish("eggs", AllowedOrderType.Single);

                //act
                var hasDishes = dishesMenuService.HasDishes();

                //assert
                hasDishes.Should().BeFalse("Because the dictionary of dishes is empty");
            }
        }
        public void Should_has_dishes_when_a_dish_is_added()
        {
            //arrange
            using (var dishesMenuService = new DishesMenuService())
            {
                var tuple = (TimeOfDayType.Morning, DishType.Entree);
                var dish  = new Dish("eggs", AllowedOrderType.Single);

                //act
                var addDishResult = dishesMenuService.TryAddDish(tuple, dish);
                var hasDishes     = dishesMenuService.HasDishes();

                //assert
                addDishResult.Should().BeTrue("Because there is no other dish that could cause a duplicated key");
                hasDishes.Should().BeTrue("Because if the dish was added, the dictionary will be populated");
            }
        }
        public void Should_no_have_dishes_when_the_dispose_is_called()
        {
            //arrange
            var dishesMenuService = new DishesMenuService();
            var tuple             = (TimeOfDayType.Morning, DishType.Entree);
            var dish = new Dish("coffee", AllowedOrderType.Multiple);

            //act
            var addDishResult = dishesMenuService.TryAddDish(tuple, dish);

            dishesMenuService.Dispose();
            var hasDishes = dishesMenuService.HasDishes();

            //assert
            addDishResult.Should().BeTrue("Because there is no other dish that could cause a duplicated key");
            hasDishes.Should().BeFalse("Because after a dispose, the dictionary will be cleaned");
        }