public async Task DeleteProductAsync() { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; IOptions <OperationalStoreOptions> someOptions = Options.Create(new OperationalStoreOptions()); using (var context = new ApplicationDbContext(options, someOptions)) { var product = new Product(); var users = new[] { new User { Id = "user1" }, }; var cartProducts = new[] { new CartProduct { Id = 1, Count = 4, User = users[0], Product = product }, }; context.Users.AddRange(users); context.CartProducts.AddRange(cartProducts); context.SaveChanges(); var cartProductService = new CartProductService(context); await cartProductService.DeleteProductAsync(1, "user1"); Assert.Null(await cartProductService.GetCartProductAsync(1, "user1")); } }
public async Task <IActionResult> Delete(int productId) { await _cartProductService.DeleteProductAsync(productId, User.FindFirstValue("sub")); return(Ok(null)); }