예제 #1
0
        public async Task return_one_item_when_result_contains_one_item()
        {
            //Arrange
            var productCategories = new List <ProductCategory> {
                _productCategory
            };
            var pagedResultBaseMock   = new PagedResultBaseMock();
            var pageProductCategories = PagedResult <ProductCategory> .From(pagedResultBaseMock, productCategories);

            _productCategoryRepository.Setup(r => r.BrowseAsync(_query)).ReturnsAsync(pageProductCategories);

            //Act
            var handler = new BrowseProductCategoryHandler(_productCategoryRepository.Object, _logger.Object);
            var result  = await handler.HandleAsync(_query);

            var productCategoryList = new List <ProductCategory>();

            foreach (var productCategory in result.Items)
            {
                productCategoryList.Add(new ProductCategory(productCategory.Id, productCategory.Name));
            }

            //Assert
            Assert.NotNull(result);
            Assert.Equal(productCategories.Count, productCategoryList.Count);
            Assert.Equal(productCategories[0].Name, productCategoryList[0].Name);
            Assert.Equal(productCategories[0].Id, productCategoryList[0].Id);
        }
예제 #2
0
        public async Task return_one_item_when_result_contains_one_item()
        {
            //Arrange
            var products = new List <Product>
            {
                new Product(_guid, "", "", 1, _guid)
            };
            var pagedResultBaseMock = new PagedResultBaseMock();
            var pageProducts        = PagedResult <Product> .From(pagedResultBaseMock, products);

            _productRepository.Setup(r => r.BrowseAsync(_query)).ReturnsAsync(pageProducts);

            //Act
            var handler = new BrowseProductHandler(_productRepository.Object, _logger.Object);
            var result  = await handler.HandleAsync(_query);

            var productList = new List <Product>();

            foreach (var product in result.Items)
            {
                productList.Add(new Product(product.Id, product.Name, product.Description, product.Price, product.CategoryId));
            }

            //Assert
            Assert.NotNull(result);
            Assert.Equal(products.Count, productList.Count);
            Assert.Equal(products[0].Name, productList[0].Name);
            Assert.Equal(products[0].Id, productList[0].Id);
            Assert.Equal(products[0].Description, productList[0].Description);
            Assert.Equal(products[0].Price, productList[0].Price);
            Assert.Equal(products[0].CategoryId, productList[0].CategoryId);
        }
        public async Task return_0_items_when_not_contain_any_documents()
        {
            var documents           = new List <Document>();
            var pagedResultBaseMock = new PagedResultBaseMock();
            var pageDocuments       = PagedResult <Document> .From(pagedResultBaseMock, documents);

            _documentRepository.Setup(r => r.BrowseAsync(_query)).ReturnsAsync(pageDocuments);

            //Act
            var handler = new BrowseDocumentsByExternalIdHandler(_documentRepository.Object, _logger.Object);
            var result  = await handler.HandleAsync(_query);

            //Assert
            Assert.NotNull(result);
            Assert.Equal(documents.Count, result.Count());
        }
        public async Task return_one_item_when_result_contains_one_item()
        {
            //Arrange
            var documents = new List <Document>
            {
                new Document(_guid, null, null, _guid)
            };
            var pagedResultBaseMock = new PagedResultBaseMock();
            var pageDocuments       = PagedResult <Document> .From(pagedResultBaseMock, documents);

            _documentRepository.Setup(r => r.BrowseAsync(_query)).ReturnsAsync(pageDocuments);

            //Act
            var handler = new BrowseDocumentsByExternalIdHandler(_documentRepository.Object, _logger.Object);
            var result  = await handler.HandleAsync(_query);

            //Assert
            Assert.NotNull(result);
            Assert.Equal(documents.Count, result.Count());
        }
        public async Task return_items_when_browseProduct_not_null()
        {
            // Arrange
            var query = new BrowseProduct();

            var productDtos = new List <ProductDto> {
                new ProductDto()
            };
            var pagedResultBaseMock = new PagedResultBaseMock();
            var pageProducts        = PagedResult <ProductDto> .From(pagedResultBaseMock, productDtos);

            _mockDispatcher.Setup(r => r.QueryAsync(query)).ReturnsAsync(pageProducts);

            // Act
            var controller = new ProductsController(_mockDispatcher.Object);
            var result     = await controller.GetAllProductByCategoryId(query);

            //Assert
            Assert.NotNull(result.Result);
            Assert.IsType <ActionResult <PagedResult <ProductDto> > >(result);
        }
예제 #6
0
        public async Task return_0_items_when_not_contain_any_documents()
        {
            var products            = new List <Product>();
            var pagedResultBaseMock = new PagedResultBaseMock();
            var pageProducts        = PagedResult <Product> .From(pagedResultBaseMock, products);

            _productRepository.Setup(r => r.BrowseAsync(_query)).ReturnsAsync(pageProducts);

            //Act
            var handler = new BrowseProductHandler(_productRepository.Object, _logger.Object);
            var result  = await handler.HandleAsync(_query);

            var productList = new List <Product>();

            foreach (var product in result.Items)
            {
                productList.Add(new Product(product.Id, product.Name, product.Description, product.Price, product.CategoryId));
            }

            //Assert
            Assert.NotNull(result);
            Assert.Equal(products.Count, productList.Count);
        }