public void GetAllFavoriteProductsByUserId_WithDummyData_ShouldReturnCorrectResults() { var context = UniShopDbContextInMemoryFactory.InitializeContext(); this.SeedData(context); this.favoriteProductsService = new FavoriteProductsService(context, new UniShopUsersService(context)); string userId = context.Users.First().Id; int firstProductId = context.Products.First().Id; int secondProductId = context.Products.Last().Id; List <UniShopUserFavoriteProduct> testfavoriteProducts = new List <UniShopUserFavoriteProduct> { new UniShopUserFavoriteProduct { UniShopUserId = userId, ProductId = firstProductId }, new UniShopUserFavoriteProduct { UniShopUserId = userId, ProductId = secondProductId } }; context.AddRange(testfavoriteProducts); context.SaveChanges(); List <UniShopUserFavoriteProductServiceModel> actualResults = this.favoriteProductsService.GetAllFavoriteProductsByUserId(userId).ToList(); int expectedResults = 2; Assert.Equal(expectedResults, actualResults.Count()); }
public void AddFavoriteProduct_WithExistentSameFavoriteProduct_ShouldReturnFalse() { string errorMessagePrefix = "FavoriteProductsService AddFavoriteProduct() method does not work properly."; var context = UniShopDbContextInMemoryFactory.InitializeContext(); this.SeedData(context); this.favoriteProductsService = new FavoriteProductsService(context, new UniShopUsersService(context)); UniShopUser user = context.Users.First(); int productId = context.Products.First().Id; UniShopUserFavoriteProduct testFavoriteProduct = new UniShopUserFavoriteProduct { UniShopUserId = user.Id, ProductId = productId }; context.Add(testFavoriteProduct); context.SaveChanges(); int expectedCount = user.FavoriteProducts.Count(); bool actualResult = this.favoriteProductsService.AddFavoriteProduct(productId, user.UserName); int actualCount = user.FavoriteProducts.Count(); Assert.False(actualResult, errorMessagePrefix); Assert.Equal(expectedCount, actualCount); }
public void GetAllFavoriteProductsByUserId_WithNonExistentUser_ShouldReturnEmptyResults() { var context = UniShopDbContextInMemoryFactory.InitializeContext(); this.SeedData(context); this.favoriteProductsService = new FavoriteProductsService(context, new UniShopUsersService(context)); string nonExistentuserId = context.Users.Last().Id + new Guid(); List <UniShopUserFavoriteProductServiceModel> actualResults = this.favoriteProductsService.GetAllFavoriteProductsByUserId(nonExistentuserId).ToList(); int expectedResults = 0; Assert.Equal(expectedResults, actualResults.Count()); }
public void RemoveFavoriteProduct_WithNonExistentProduct_ShouldSuccessfullyCreate() { string errorMessagePrefix = "FavoriteProductsService RemoveFavoriteProduct() method does not work properly."; var context = UniShopDbContextInMemoryFactory.InitializeContext(); this.SeedData(context); this.favoriteProductsService = new FavoriteProductsService(context, new UniShopUsersService(context)); UniShopUser user = context.Users.First(); int productId = context.Products.Last().Id + 1; bool actualResult = this.favoriteProductsService.RemoveFavoriteProduct(productId, user.UserName); Assert.False(actualResult, errorMessagePrefix); }
public void AddFavoriteProduct_WithNonExistentUser_ShouldReturnFalse() { string errorMessagePrefix = "FavoriteProductsService AddFavoriteProduct() method does not work properly."; var context = UniShopDbContextInMemoryFactory.InitializeContext(); this.SeedData(context); this.favoriteProductsService = new FavoriteProductsService(context, new UniShopUsersService(context)); string nonExistentUsername = "******"; int productId = context.Products.First().Id; bool actualResult = this.favoriteProductsService.AddFavoriteProduct(productId, nonExistentUsername); Assert.False(actualResult, errorMessagePrefix); }
public void AddFavoriteProduct_WithCorrectData_ShouldSuccessfullyCreate() { string errorMessagePrefix = "FavoriteProductsService AddFavoriteProduct() method does not work properly."; var context = UniShopDbContextInMemoryFactory.InitializeContext(); this.SeedData(context); this.favoriteProductsService = new FavoriteProductsService(context, new UniShopUsersService(context)); UniShopUser user = context.Users.First(); int productId = context.Products.First().Id; int expectedCount = user.FavoriteProducts.Count() + 1; bool actualResult = this.favoriteProductsService.AddFavoriteProduct(productId, user.UserName); int actualCount = user.FavoriteProducts.Count(); Assert.True(actualResult, errorMessagePrefix); Assert.Equal(expectedCount, actualCount); }
public void RemoveFavoriteProduct_WithCorrectData_ShouldSuccessfullyCreate() { string errorMessagePrefix = "FavoriteProductsService RemoveFavoriteProduct() method does not work properly."; var context = UniShopDbContextInMemoryFactory.InitializeContext(); this.SeedData(context); this.favoriteProductsService = new FavoriteProductsService(context, new UniShopUsersService(context)); UniShopUser user = context.Users.First(); int firstProductId = context.Products.First().Id; int secondProductId = context.Products.Last().Id; List <UniShopUserFavoriteProduct> testfavoriteProducts = new List <UniShopUserFavoriteProduct> { new UniShopUserFavoriteProduct { UniShopUserId = user.Id, ProductId = firstProductId }, new UniShopUserFavoriteProduct { UniShopUserId = user.Id, ProductId = secondProductId } }; context.AddRange(testfavoriteProducts); context.SaveChanges(); int expectedCount = user.FavoriteProducts.Count() - 1; bool actualResult = this.favoriteProductsService.RemoveFavoriteProduct(firstProductId, user.UserName); int actualCount = user.FavoriteProducts.Count(); Assert.True(actualResult, errorMessagePrefix); Assert.Equal(expectedCount, actualCount); }
public FavoriteProductsController(IFavoriteProductsService favoriteProductsService) { this.favoriteProductsService = favoriteProductsService; }