public void FavoriteRecipe_DoesNotAddUserIfAlreadyAdded() { var user = new User { Id = 2 }; RecipeManagerContextHelper.AddUser(_recipeManagerContext, user); var recipe = new Recipe { Id = 1, IsPublic = true, IsShared = true, SharedWith = new List <RecipeUser>() }; recipe.SharedWith.Add(new RecipeUser { User = user, Recipe = recipe }); RecipeManagerContextHelper.AddRecipe(_recipeManagerContext, recipe); _recipeRepository.FavoriteRecipe(recipe.Id, user.Id.ToString(), true); var result = _recipeRepository.GetRecipeById(recipe.Id); Assert.AreEqual(recipe.SharedWith.First().Id, result.SharedWith.First().Id); Assert.AreEqual(recipe.IsShared, result.IsShared); }
public void GetRecipesForUser_ReturnsExpected() { var user = new User { Id = 2 }; RecipeManagerContextHelper.AddUser(_recipeManagerContext, user); var expectedRecipes = new List <Recipe> { new Recipe { Id = 1, UserId = "2", IsPublic = true, }, new Recipe { Id = 45, IsShared = true, SharedWith = new List <RecipeUser>() } }; expectedRecipes.Last().SharedWith.Add(new RecipeUser { User = user, Recipe = expectedRecipes.Last() }); AddRecipesToContext(expectedRecipes); var result = _recipeRepository.GetRecipesForUser("2"); AssertEachRecipeExists(expectedRecipes, result); }
public void GetUser_ReturnsExpected() { var expectedUser = new User { Id = 1, AuthId = "authO|43124214321" }; RecipeManagerContextHelper.AddUser(_recipeManagerContext, expectedUser); var result = _userRepository.GetByAuthId(expectedUser.AuthId); Assert.AreEqual(expectedUser, result); }
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); }
public void UnFavoriteRecipe_RemovesUserFromSharedWith() { var user = new User { Id = 2 }; RecipeManagerContextHelper.AddUser(_recipeManagerContext, user); var recipe = new Recipe { Id = 1, IsPublic = true, IsShared = true, SharedWith = new List <RecipeUser>() }; recipe.SharedWith.Add(new RecipeUser { User = user, Recipe = recipe }); var expectedRecipe = new Recipe { Id = 1, IsPublic = true, IsShared = false, SharedWith = new List <RecipeUser>() }; RecipeManagerContextHelper.AddRecipe(_recipeManagerContext, recipe); _recipeRepository.UnFavoriteRecipe(recipe.Id, user.Id.ToString(), true); var result = _recipeRepository.GetRecipeById(recipe.Id); Assert.AreEqual(expectedRecipe.SharedWith.Count, result.SharedWith.Count); Assert.AreEqual(expectedRecipe.IsShared, result.IsShared); }