public async Task GetProduct_ReturnProduct_UsingInValidId() { //Arrange var options = new DbContextOptionsBuilder <ProductsDbContext>() .UseInMemoryDatabase(nameof(GetProduct_ReturnProduct_UsingInValidId)) .Options; var dbContext = new ProductsDbContext(options); SeedData(dbContext); var productProfile = new ProductProfile(); var config = new MapperConfiguration(cfg => cfg.AddProfile(productProfile)); var mapper = new Mapper(config); var productProvider = new ProductsProvider(dbContext, null, mapper); //Act var result = await productProvider.GetProductAsync(-1); //Assert Assert.False(result.IsSuccess); Assert.Null(result.product); Assert.NotNull(result.ErrorMessage); }
public async void GetProductReturnsProductUsingValidId() { //arrange var options = new DbContextOptionsBuilder <ProductsDbContext>() .UseInMemoryDatabase(nameof(GetProductReturnsProductUsingValidId)) .Options; var dbContext = new ProductsDbContext(options); CreateProducts(dbContext); var productProfile = new ProductProfile(); var configuration = new MapperConfiguration(cfg => cfg.AddProfile(productProfile)); var mapper = new Mapper(configuration); var productsProvider = new ProductsProvider(dbContext, null, mapper); //act var result = await productsProvider.GetProductAsync(1); //assert Assert.True(result.IsSuccess); Assert.NotNull(result.Product); Assert.True(result.Product.Id == 1); Assert.Null(result.ErrorMessage); }
public async Task GetProductReturnsProductUsingInvalidId() { var options = new DbContextOptionsBuilder <ProductsDbContext>() .EnableSensitiveDataLogging() .UseInMemoryDatabase(nameof(GetProductReturnsProductUsingInvalidId)) .Options; var context = new ProductsDbContext(options); CreateProducts(context); var productProfile = new ProductProfile(); var configuration = new MapperConfiguration(config => config.AddProfile(productProfile)); var mapper = new Mapper(configuration); var provider = new ProductsProvider(context, null, mapper); var(isSuccess, product, errorMessage) = await provider.GetProductAsync(-1); Assert.False(isSuccess); Assert.Null(product); Assert.NotNull(errorMessage); }
public async Task GetProductReturnsProductUsingInValidId() { var productProfile = new ProductProfile(); var configuration = new MapperConfiguration(cfg => cfg.AddProfile(productProfile)); var mapper = new Mapper(configuration); var productsProvider = new ProductsProvider(fixture.dbContext, null, mapper); var product = await productsProvider.GetProductAsync(-1); Assert.False(product.IsSuccess); Assert.Null(product.Product); Assert.NotNull(product.ErrorMessage); }
public async Task GetProductReturnProductUsingInValidIdAsync() { //Arrange var profile = new ProductProfile(); var mapperConfig = new MapperConfiguration(a => a.AddProfile(profile)); var mapper = new Mapper(mapperConfig); var productsProvider = new ProductsProvider(dbContext, null, mapper); //act var produsts = await productsProvider.GetProductAsync(-1); //Assert Assert.False(produsts.IsSuccess); Assert.Null(produsts.Product); Assert.NotNull(produsts.ErrorMessage); }
public async Task GetAllProductWithValidId() { var options = new DbContextOptionsBuilder <ProductsDbContext>() .UseInMemoryDatabase(nameof(GetAllProducts)).Options; var dbContext = new ProductsDbContext(options); var productProfile = new ProductProfile(); var configuration = new MapperConfiguration(cfg => cfg.AddProfile(productProfile)); var mapper = new Mapper(configuration); var productsProvider = new ProductsProvider(dbContext, null, mapper); var product = await productsProvider.GetProductAsync(1); Assert.True(product.IsSuccess); Assert.NotNull(product.Product); Assert.Null(product.ErrorMessage); }
public async Task GetProductReturnsProductUsingInvalidId() { var options = new DbContextOptionsBuilder<ProductsDbContext>() .UseSqlServer("Data Source=LAPTOP-U3V1724K;Initial Catalog=Microservices.Products.Database;Integrated Security=True") .Options; var dbContext = new ProductsDbContext(options); var productProfile = new ProductProfile(); var configuration = new MapperConfiguration(cfg => cfg.AddProfile(productProfile)); var mapper = new Mapper(configuration); var productsProvider = new ProductsProvider(dbContext, null, mapper, configuration, null); var product = await productsProvider.GetProductAsync(-1); Assert.False(product.IsSuccess); Assert.Null(product.Product); Assert.NotNull(product.ErrorMessage); }
public async Task GetProductReturnsProductUsingInValidId() { var options = new DbContextOptionsBuilder <ProductsDbContext>() .UseInMemoryDatabase(nameof(GetProductReturnsProductUsingInValidId)) .Options; var dbContext = new ProductsDbContext(options); CreateProducts(dbContext); var productProfile = new ProductProfile(); var config = new MapperConfiguration(cfg => cfg.AddProfile(productProfile)); var mapper = new Mapper(config); var productsProvider = new ProductsProvider(dbContext, null, mapper); var product = await productsProvider.GetProductAsync(-1); Assert.False(product.IsSuccess); Assert.Null(product.Product); Assert.NotNull(product.ErrorMessage); }
public async void GetProductInValidProductId() { var options = new DbContextOptionsBuilder <ProductsDbContext>() .UseInMemoryDatabase(nameof(GetProductValidProductId)) .Options; var productDbContext = new ProductsDbContext(options); var profile = new ProductProfile(); var configuration = new MapperConfiguration(config => config.AddProfile(profile)); var mapper = new Mapper(configuration); var dbprovider = new ProductsProvider(productDbContext, null, mapper); var products = await dbprovider.GetProductAsync(5); Assert.False(products.Success); Assert.Null(products.product); // Assert.True(products.Products.Any()); Assert.Contains("Not", products.ErrorMessage); }
public async Task GetProductsReturnsProductUsingValidId() { var options = new DbContextOptionsBuilder <ProductsDbContext>() .UseInMemoryDatabase(nameof(GetProductsReturnsProductUsingValidId)) .Options; var dbContext = new ProductsDbContext(options); CreateProducts(dbContext); var productProfile = new ProductProfile(); var mapperConfig = new MapperConfiguration(config => config.AddProfile(productProfile)); var mapper = new Mapper(mapperConfig); var productProvider = new ProductsProvider(dbContext, null, mapper); var results = await productProvider.GetProductAsync(1); Assert.True(results.IsSuccess); Assert.NotNull(results.Product); }
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 GetProductUsingInvalidId() { var productGuid = Guid.NewGuid(); var options = new DbContextOptionsBuilder <ProductsDbContext>() .UseInMemoryDatabase(nameof(GetProductUsingInvalidId)) .Options; var dbContext = new ProductsDbContext(options); this.CreateProductWithId(dbContext, productGuid); var productProfile = new ProductProfile(); var configuration = new MapperConfiguration(config => config.AddProfile(productProfile)); var mapper = new Mapper(configuration); var productsProvider = new ProductsProvider(dbContext, null, mapper); var product = await productsProvider.GetProductAsync(Guid.NewGuid()); Assert.False(product.IsSuccess); Assert.Null(product.Product); Assert.NotNull(product.ErrorMessage); }
public async System.Threading.Tasks.Task GetProductMethodReturnsProductUsingValidId() { var options = new DbContextOptionsBuilder <ProductsDbContext>() .UseInMemoryDatabase(nameof(GetProductMethodReturnsProductUsingValidId)) .Options; var dbContext = new ProductsDbContext(options); CreateProducts(dbContext); var productProfile = new ProductProfile(); var configuration = new MapperConfiguration(cfg => cfg.AddProfile(productProfile)); var mapper = new Mapper(configuration); var productsProvider = new ProductsProvider(dbContext, null, mapper); var products = await productsProvider.GetProductAsync(1); Assert.True(products.IsSuccess); Assert.NotNull(products.Product); Assert.True(products.Product.Id == 1); Assert.Null(products.ErrorMessage); }