public async Task DeleteAllItems_TwoDiffrentItems() { var serviceProvider = BuildInMemoryDBProvider(); using (var dbContext = serviceProvider.GetService <DatabaseContext>()) { //Arrange var shoppingCart = new ShoppingCart() { Id = "1", Items = new List <ShoppingCartMobilePhone>() }; var item = new ShoppingCartMobilePhone() { MobilePhoneId = 1, ShoppingCartId = "1", Quantity = 2 }; var item2 = new ShoppingCartMobilePhone() { MobilePhoneId = 2, ShoppingCartId = "1", Quantity = 1 }; shoppingCart.Items.Add(item); shoppingCart.Items.Add(item2); var user = new ApplicationUser() { Id = "1", ShoppingCart = shoppingCart }; dbContext.Add(user); await dbContext.SaveChangesAsync(); var mockHttpContextAccessor = new Mock <IHttpContextAccessor>(); mockHttpContextAccessor.Object.HttpContext = new DefaultHttpContext(); var claims = new ClaimsPrincipal(); mockHttpContextAccessor.Setup(x => x.HttpContext.User).Returns(claims); List <ApplicationUser> _users = new List <ApplicationUser>(); var userManager = MockUserManager <ApplicationUser>(_users).Object; var shoppingCartRepository = new ShoppingCartRepository(dbContext, userManager, mockHttpContextAccessor.Object); //Act await shoppingCartRepository.DeleteAllItems(shoppingCart); var sc = await shoppingCartRepository.GetShoppingCart(); //Assert sc.Should().BeOfType <ShoppingCart>(); sc.Should().NotBeNull(); sc.Items.Should().HaveCount(0); } }