public void Init() { var services = new ServiceCollection(); var options = new DbContextOptionsBuilder <WasteManagementDbContext>() .UseInMemoryDatabase(databaseName: "test_db") .UseQueryTrackingBehavior(QueryTrackingBehavior.NoTracking) .Options; _memoryDbContext = new WasteManagementDbContext(options); //Arrange var _loggerRepo = Substitute.For <ILogger <WasteContainerService> >(); services.AddTransient <IWasteContainerRepository, WasteContainerRepository>(); services.AddTransient <IWasteContainerService, WasteContainerService>(); var serviceProvider = services.BuildServiceProvider(); _wasteContainerRepository = new WasteContainerRepository(_memoryDbContext); _wasteContainerService = new WasteContainerService(_wasteContainerRepository, _loggerRepo); _container = Builder <WasteContainerDtoModel> .CreateListOfSize(10).TheFirst(5) .With(p => p.Name = SearchNameString) .All() .With(c => c.Id = Guid.NewGuid()).Build(); if (_memoryDbContext.Containers.Count() == 0) { _memoryDbContext.Containers.AddRange(_container); _memoryDbContext.SaveChanges(true); } }
public WasteContainerRepository(IWasteManagementDbContext context) { _context = context; }