コード例 #1
0
        public void FavoriteRecipe_AddsUserToSharedWith()
        {
            var user = new User
            {
                Id = 2
            };

            RecipeManagerContextHelper.AddUser(_recipeManagerContext, user);

            var recipe = new Recipe
            {
                Id         = 1,
                IsPublic   = true,
                IsShared   = false,
                SharedWith = null
            };

            var expectedRecipe = new Recipe
            {
                Id         = 1,
                IsPublic   = true,
                IsShared   = true,
                SharedWith = new List <RecipeUser>()
            };

            expectedRecipe.SharedWith.Add(new RecipeUser
            {
                User   = user,
                Recipe = expectedRecipe
            });

            RecipeManagerContextHelper.AddRecipe(_recipeManagerContext, recipe);

            _recipeRepository.FavoriteRecipe(recipe.Id, user.Id.ToString(), true);
            var result = _recipeRepository.GetRecipeById(recipe.Id);

            Assert.AreEqual(expectedRecipe.SharedWith.First().User.Id, result.SharedWith.First().User.Id);
            Assert.AreEqual(expectedRecipe.SharedWith.First().Recipe.Id, result.SharedWith.First().Recipe.Id);
            Assert.AreEqual(expectedRecipe.IsShared, result.IsShared);
        }