public async Task AddAsyncTest_ShouldContainNewProduct() { _configuration = new ConfigurationBuilder().Build(); var options = new DbContextOptionsBuilder <NorthWeirdDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .EnableSensitiveDataLogging() .Options; using (var context = new NorthWeirdDbContext(options)) { var service = new SqlProductData(context, _configuration, _mapper); var productToAdd = new ProductDto { ProductName = "Lososij", ProductId = 4 }; await service.AddAsync(productToAdd); } using (var context = new NorthWeirdDbContext(options)) { var product = context.Products.First(); Assert.AreEqual(1, context.Products.Count()); Assert.AreEqual(4, product.ProductId); Assert.AreEqual("Lososij", product.ProductName); } }
public async Task GetAsyncTest_ShouldReturnProductByIdWithSpecifiedProductName(int productId, string productName) { _configuration = new ConfigurationBuilder().Build(); var service = new SqlProductData(_context, _configuration, _mapper); var product = await service.GetAsync(productId); Assert.AreEqual(productName, product?.ProductName); }
public async Task GetAllAsync_ShouldReturnSpecifiedAmountOfRecords(int productsPerPage, int resultProductNumber) { _configuration = new ConfigurationBuilder() .AddInMemoryCollection(new[] { new KeyValuePair <string, string>("ModelSettings:ProductsPerPage", productsPerPage.ToString()) }) .Build(); var service = new SqlProductData(_context, _configuration, _mapper); var products = await service.GetAllAsync(); Assert.AreEqual(resultProductNumber, products.Count()); }