public async Task DeleteProduct_ValidData_ReturnsOkResult()
        {
            //Arrange
            productRequest = _fixture.Build <Product>().Create();
            var expectedResult = productRequest.Id;

            _mockproductRepository.Setup(x => x.DeleteProduct(productRequest.Id)).ReturnsAsync(expectedResult);

            //Act
            var actualResult = await _productService.DeleteProduct(productRequest.Id);

            //Assert
            actualResult.Should().BeEquivalentTo(expectedResult);
            _mockproductRepository.VerifyAll();
        }
示例#2
0
        public void Stage011_DeleteProductTest()
        {
            var productRepo    = new ProductsService();
            var createdDetails = productRepo.GetAllProductsByName("Nokia 3310");

            Assert.IsNotNull(createdDetails);
            productRepo.DeleteProduct(createdDetails.Items[0].Id);

            var output = productRepo.GetProductById(createdDetails.Items[0].Id);

            Assert.IsNull(output);
        }
示例#3
0
 public IActionResult Delete(int Id)
 {
     try
     {
         _productsService.DeleteProduct(Id);
         return(Ok());
     }
     catch
     {
         return(BadRequest());
     }
 }
 public HttpResponseMessage DeleteProduct(Guid?id)
 {
     try
     {
         var productsService = new ProductsService();
         var product         = productsService.DeleteProduct(id);
         var response        = Request.CreateResponse(HttpStatusCode.OK, product);
         return(response);
     }
     catch (Exception e)
     {
         var error = Request.CreateResponse(HttpStatusCode.InternalServerError, e.Message);
         return(error);
     }
 }
        public async Task DeleteProductShouldWorkForAdminNotCreator()
        {
            var productRepo    = new Mock <IRepository <Product> >();
            var productId      = Guid.NewGuid();
            var productCreator = new User {
                UserName = "******"
            };
            var products = new List <Product>
            {
                new Product {
                    Id = Guid.NewGuid(), Name = "Jacket"
                },
                new Product {
                    Id = productId, Name = "Suit", Creator = productCreator
                },
                new Product {
                    Id = Guid.NewGuid(), Name = "T-shirt"
                },
            };

            productRepo.Setup(r => r.All()).Returns(products.AsQueryable());
            productRepo.Setup(r => r.Delete(It.IsAny <Product>())).Callback <Product>(p => products.Remove(p));

            var usersRepo = new Mock <IRepository <User> >();

            usersRepo.Setup(r => r.All()).Returns(new List <User> {
                productCreator, new User()
                {
                    UserName = "******"
                }
            }.AsQueryable());

            var userStore   = new Mock <IUserStore <User> >();
            var userManager = new Mock <UserManager <User> >(userStore.Object, null, null, null, null, null, null, null, null);

            userManager.Setup(r => r.IsInRoleAsync(It.IsAny <User>(), It.IsAny <string>())).Returns(Task.FromResult(true));

            var service = new ProductsService(productRepo.Object, usersRepo.Object, userManager.Object);

            var result = await service.DeleteProduct(productId.ToString(), "nqkuv");

            Assert.True(result);
            Assert.Equal(2, products.Count);
            Assert.DoesNotContain(products, p => p.Id == productId);
            productRepo.Verify(r => r.Delete(It.IsAny <Product>()), Times.Once);
            productRepo.Verify(r => r.SaveChangesAsync(), Times.Once);
        }
        public IActionResult Delete(HttpResponse response, int knifeId, HttpSession session)
        {
            var user = AuthenticationManager.GetAuthenticatedUser(session.Id);

            if (user == null)
            {
                this.Redirect(response, "/login/login");
                return(null);
            }

            var service = new ProductsService(Data.Data.Context);

            service.DeleteProduct(knifeId);

            this.Redirect(response, "/admin/index");
            return(null);
        }
        public async Task DeleteProductShouldReturnFalseForNotFoundProduct()
        {
            var productRepo    = new Mock <IRepository <Product> >();
            var productId      = Guid.NewGuid();
            var productCreator = new User {
                UserName = "******"
            };
            var products = new List <Product>
            {
                new Product {
                    Id = Guid.NewGuid(), Name = "Jacket"
                },
                new Product {
                    Id = productId, Name = "Suit", Creator = productCreator
                },
                new Product {
                    Id = Guid.NewGuid(), Name = "T-shirt"
                },
            };

            productRepo.Setup(r => r.All()).Returns(products.AsQueryable());

            var usersRepo = new Mock <IRepository <User> >();

            usersRepo.Setup(r => r.All()).Returns(new List <User> {
                productCreator
            }.AsQueryable());

            var userStore   = new Mock <IUserStore <User> >();
            var userManager = new Mock <UserManager <User> >(userStore.Object, null, null, null, null, null, null, null, null);

            userManager.Setup(r => r.IsInRoleAsync(It.IsAny <User>(), It.IsAny <string>())).Returns(Task.FromResult(true));

            var service = new ProductsService(productRepo.Object, usersRepo.Object, userManager.Object);

            var result = await service.DeleteProduct(Guid.NewGuid().ToString(), "stamat");

            Assert.False(result);
            Assert.Equal(3, products.Count);
            Assert.Contains(products, p => p.Id == productId);
            productRepo.Verify(r => r.Delete(It.IsAny <Product>()), Times.Never);
            productRepo.Verify(r => r.SaveChangesAsync(), Times.Never);
        }
示例#8
0
 public ActionResult Delete(int ID)
 {
     _productsService.DeleteProduct(ID);
     return(RedirectToAction("ProductTable"));
 }
示例#9
0
 public ActionResult delete(int id)
 {
     productsService.DeleteProduct(id);
     return(RedirectToAction("ProductsTable"));
 }
示例#10
0
 public void Delete(int id)
 {
     _productService.DeleteProduct(id);
 }
示例#11
0
 public ActionResult Delete(Product p)
 {
     Pservice.DeleteProduct(p.ID);
     return(RedirectToAction("Index"));
 }