public void TestThatHandlerGetsAllProductsFromContext()
        {
            var repository = RepositoryFactory.GetInstance<Product, int>();
            repository.Add(new List<Product>
            {
                new Product { Id = 1, Name = "1" },
                new Product { Id = 2, Name = "2" },
                new Product { Id = 3, Name = "3" },
                new Product { Id = 4, Name = "4" },
                new Product { Id = 5, Name = "5" },
            });

            var uow = new Mock<IUnitOfWork>();
            uow.SetupGet(u => u.Products).Returns(repository);

            var factory = new Mock<IUnitOfWorkFactory>();
            factory.Setup(f => f.CreateNew()).Returns(uow.Object);

            var query = new GetAllProductsQuery
            {
                PageNumber = 2,
                PageSize = 2
            };

            var handler = new GetAllProductsQueryHandler(factory.Object);

            var result = handler.Handle(query);

            Assert.IsNotNull(result);
            Assert.AreEqual(2, result.Count());
            Assert.AreEqual(3, result.ElementAt(0).Id);
            Assert.AreEqual(4, result.ElementAt(1).Id);
        }
        public async Task PassQuery_ToGetAllProductsQueryHandler_ReturnsListOfProductsAsync()
        {
            // Arrange
            var products = Enumerable.Range(1, 10).Select(x =>
            {
                return(new Product
                {
                    Id = x,
                    Name = $"Part {x}",
                    PartNumber = $"X00{x}",
                    CostPrice = (decimal)x * 10,
                    SellPrice = (decimal)x * 20
                });
            });

            var repository = Substitute.For <IProductRepository>();

            repository.GetAll().Returns(products);

            var handler = new GetAllProductsQueryHandler(repository, Mapper);

            // Act
            var result = await handler.Handle(new GetAllProductsQuery(), new CancellationToken());

            // Assert
            Assert.Equal(10, result.Count());
        }
Example #3
0
        public void GetAllProducts_ReturnsAllProducts()
        {
            var queryHandler = new GetAllProductsQueryHandler();

            var products = queryHandler.GetAllProducts();

            Assert.AreEqual(2, products.Count());
        }
Example #4
0
        public async Task GetAllProductsTest()
        {
            var sut = new GetAllProductsQueryHandler(_context, _mapper);

            var result = await sut.Handle(new GetAllProductsQuery(), CancellationToken.None);

            result.ShouldBeOfType <ProductsListDto>();
            result.Products.Count.ShouldBe(1);
        }
        public async Task GetAllWithDescriptionMatching()
        {
            var sut = new GetAllProductsQueryHandler(_context, _mapper);

            var result = await sut.Handle(new GetAllProductsQuery { DescriptionContains = "laptop" }, CancellationToken.None);

            result.ShouldBeOfType <ProductsListViewModel>();
            result.Products.Count().ShouldBe(1);
        }
Example #6
0
        public void GetAllProductsSuccessfully()
        {
            var handler = new GetAllProductsQueryHandler(_productService.Object);

            var result = handler.Handle(new GetAllProductsQuery(), default);

            Assert.IsNotNull(result);
            Assert.IsInstanceOf <Task <Response <IEnumerable <ProductVm> > > >(result);
            Assert.AreEqual(StatusCodes.Status200OK, result.Result.StatusCode);
        }
Example #7
0
        public async Task GetCustomersTest()
        {
            var sut = new GetAllProductsQueryHandler(_context);

            var result = await sut.Handle(new GetAllProductsQuery(), CancellationToken.None);

            result.ShouldBeOfType <ProductsListViewModel>();

            result.Products.Count.ShouldBe(3);
        }
        public void CanCreate_GetAllProductsQueryHandler()
        {
            // Arrange
            var repository = Substitute.For <IProductRepository>();

            // Act
            var handler = new GetAllProductsQueryHandler(repository, Mapper);

            // Assert
            Assert.NotNull(handler);
        }