public void DetailsByIdShouldReturnCorrectViewAndModel()
        {
            var mealsServiceMock = new Mock <IMealsService>();

            const string mealName = "Салата Цезар";

            mealsServiceMock.Setup(x => x.GetById(It.IsAny <int>()))
            .Returns(new Meal()
            {
                Name     = mealName,
                Category = new MealCategory()
                {
                    Name = "Салати"
                }
            });

            var controller = new MealsController(mealsServiceMock.Object, null);

            controller.WithCallTo(x => x.Details(123123))
            .ShouldRenderView("Details")
            .WithModel <MealDetailsViewModel>(
                viewModel =>
            {
                Assert.AreEqual(mealName, viewModel.Name);
            }
                )
            .AndNoModelErrors();
        }
        public void DetailsByIdShouldTReturnNotFound()
        {
            var  mealsServiceMock = new Mock <IMealsService>();
            Meal meal             = null;

            mealsServiceMock.Setup(x => x.GetById(0))
            .Returns(meal);

            var controller = new MealsController(mealsServiceMock.Object, null);

            controller.WithCallTo(x => x.Details(0))
            .ShouldGiveHttpStatus(HttpStatusCode.NotFound);
        }