//ToDO public async void ThrowException_WhenInput_AlreadyExists() { //Arrange var options = new DbContextOptionsBuilder <GameStoreContext>() .UseInMemoryDatabase("ThrowException_WhenInput_AlreadyExists").Options; var productToAdd = new Product { Name = "Test", Description = "test description", ShoppingCartProducts = new List <ShoppingCartProducts>(), Comments = new List <Comment>() }; //Act using (var curContext = new GameStoreContext(options)) { var sut = new ProductsService(curContext); curContext.Products.Add(productToAdd); curContext.SaveChanges(); } //Act using (var curContext = new GameStoreContext(options)) { var sut = new ProductsService(curContext); await sut.AddProductAsync(productToAdd); } }
public async Task <ActionResult <List <Product> > > Post([FromBody] Product product) { if (ModelState.IsValid) { return(await _serv.AddProductAsync(product)); } else { return(new BadRequestObjectResult(new { ErrorMessage = ErrorMessages.InputIsNotValid })); } }
public async Task AddProductAsyncNullEntityShouldNotAddProduct() { var options = new DbContextOptionsBuilder <PhotoparallelDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; var dbContext = new PhotoparallelDbContext(options); var productService = new ProductsService(dbContext); Product product = null; await productService.AddProductAsync(product); var products = dbContext.Products.ToList(); Assert.Empty(products); }
public async Task AddProductAsync_GivenAValidScenario_ShouldNotThrowAnException() { IUnitOfWork <IBoltDbContext> unitOfWorkMock = new Mock <IUnitOfWork <IBoltDbContext> >().Object; var productDto = new ProductDTO { Name = "Cappucino", Description = "This is a test description", Price = 2.5 }; var service = new ProductsService(unitOfWorkMock); Action result = async() => await service.AddProductAsync(productDto); result.Should().NotThrow(); }
public async Task AddProductAsyncShouldAddProduct() { var options = new DbContextOptionsBuilder <PhotoparallelDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; var dbContext = new PhotoparallelDbContext(options); var productService = new ProductsService(dbContext); var product = new Product { Name = "Canon M50" }; await productService.AddProductAsync(product); var products = dbContext.Products.ToList(); Assert.Single(products); Assert.Equal(product.Name, products.First().Name); }
public void Add_A_Product_Test() { var result = service.AddProductAsync(null).Result; Assert.IsType <BadRequestObjectResult>(result); }
public async Task <IActionResult> CreateProductAsync([FromBody] NewProductItem newProduct) { var product = await ProductsService.AddProductAsync(newProduct); return(Created("", product)); }