public async Task FullTest() { var loggerUpdateStocks = new LoggerFactory().CreateLogger <UpdateStocks>(); var loggerStocks = new LoggerFactory().CreateLogger <SQLStockRepository>(); var loggerProducts = new LoggerFactory().CreateLogger <SQLProductRepository>(); var loggerDates = new LoggerFactory().CreateLogger <SQLDatedPriceRepository>(); var dbOptions = new DbContextOptionsBuilder <AppDbContext>().UseSqlServer("Server=(localdb)\\mssqllocaldb;Database=stockDb;Trusted_Connection=True;MultipleActiveResultSets=true").Options; var context = new AppDbContext(dbOptions); IRepository <Stock> repositoryStock = new SQLStockRepository(context, loggerStocks); IRepository <Product> repositoryProduct = new SQLProductRepository(context, loggerProducts); IRepository <DatedPrice> repositoryDate = new SQLDatedPriceRepository(context, loggerDates); var x = new UpdateStocks(loggerUpdateStocks, repositoryStock, repositoryProduct, repositoryDate); await x.Update(); }
public ProductRepositoryTests() { dbContextOptions = new DbContextOptionsBuilder <ProductDBContext>().EnableSensitiveDataLogging().UseInMemoryDatabase(Guid.NewGuid().ToString()); dbContext = new ProductDBContext(dbContextOptions.Options); dbContext.Add(new ProductInfo() { description = "HP Thinkpad", expiryDate = Convert.ToDateTime("2030-06-01"), id = "0002", manufacturer = "HP", manufacturingDate = Convert.ToDateTime("2015-06-01"), name = "Hp Thinkpad", productType = "Laptop" }); dbContext.Add(new ProductInfo() { description = "Nestle Cofee Classic 200g", expiryDate = Convert.ToDateTime("2019-01-06"), id = "0003", manufacturer = "Nestle", manufacturingDate = Convert.ToDateTime("2019-01-02"), name = "Nestle Cofee", productType = "Cofee" }); dbContext.Add(new ProductInfo() { description = "Brother Printer L23251", expiryDate = Convert.ToDateTime("2030-06-01"), id = "0004", manufacturer = "Brother", manufacturingDate = Convert.ToDateTime("2015-06-01"), name = "Brother Printer", productType = "Printer" }); dbContext.SaveChanges(); repository = new SQLProductRepository(dbContext); }