/// <summary> /// Initializes a new instance of <seealso cref="ProductsProvider"/> /// </summary> /// <param name="dbContext"></param> /// <param name="logger"></param> /// <param name="mapper"></param> public ProductsProvider(Db.ProductsDbContext dbContext, ILogger <ProductsProvider> logger, IMapper mapper) { _dbContext = dbContext; _logger = logger; _mapper = mapper; SeedData(); }
public ProductsProvider(Db.ProductsDbContext dbContext, ILogger <ProductsProvider> logger, IMapper mapper) { this.dbContext = dbContext; this.logger = logger; this.mapper = mapper; SeedData(); }
public ProductsProvider(Db.ProductsDbContext dbContext, ILogger <ProductsProvider> logger, IMapper mapper, IConfigurationProvider configurationProvider, IEventBus eventBus) { this.dbContext = dbContext; this.logger = logger; this.mapper = mapper; this.configurationProvider = configurationProvider; _eventBus = eventBus; }
private void CreateData(Db.ProductsDbContext dbContext) { for (int i = 1; i <= 10; i++) { var product = new Db.Product(i, $"Product-{i}", i * 3.14M, 100); dbContext.Products.Add(product); } dbContext.SaveChanges(); }
public ProductsProvider(Db.ProductsDbContext dbContext, Interfaces.ICosmosDbService cosmosDbService, Interfaces.IImagesService imagesService, ILogger <ProductsProvider> logger, IMapper mapper) { this._dbContext = dbContext; this._cosmosDbService = cosmosDbService; this._imagesService = imagesService; this._logger = logger; this._mapper = mapper; //SeedData(); }
public async Task GetProduct_ReturnsProduct_InvalidId() { var dbContextOptionsBuilder = new DbContextOptionsBuilder(); dbContextOptionsBuilder.UseInMemoryDatabase("GetProduct_ReturnsProduct_InvalidId"); var dbContext = new Db.ProductsDbContext(dbContextOptionsBuilder.Options); CreateData(dbContext); var mapper = new MapperConfiguration(config => { config.CreateMap <Db.Product, Models.Product>(); }).CreateMapper(); var productsProvider = new ProductsProvider(dbContext, null, mapper); var productResult = await productsProvider.GetProductAsync(-1); Assert.False(productResult.IsSuccess); Assert.Null(productResult.Product); Assert.NotNull(productResult.ErrorMessage); }
public async Task GetProducts_ReturnsAllProduts() { var dbContextOptionsBuilder = new DbContextOptionsBuilder(); dbContextOptionsBuilder.UseInMemoryDatabase("GetProducts_ReturnsAllProduts"); var dbContext = new Db.ProductsDbContext(dbContextOptionsBuilder.Options); CreateData(dbContext); var mapper = new MapperConfiguration(config => { config.CreateMap <Db.Product, Models.Product>(); }).CreateMapper(); var productsProvider = new ProductsProvider(dbContext, null, mapper); var productsResult = await productsProvider.GetProductsAsync(); Assert.True(productsResult.IsSuccess); Assert.Equal(10, productsResult.Products.Count()); Assert.Null(productsResult.ErrorMessage); }