Exemple #1
0
        public void TestCreatePurchaseOrder()
        {
            var supplierController = new SupplierController(new LoggerStub <SupplierController>());
            var poController       = new PurchaseOrderController(new LoggerStub <PurchaseOrderController>());

            var suppliers = supplierController.Search("Test").Result as List <Supplier>;

            Assert.IsNotNull(suppliers, "Suppliers are null");
            Assert.IsTrue(suppliers.Count > 0, "No test suppliers in database");
            var supplier = suppliers.FirstOrDefault();
            var poId     = poController.CreatePurchaseOrder(supplier.Id).Result;

            Assert.IsNotNull(poId, "Purchase order controller returned NULL");
            Assert.AreNotEqual(poId, Guid.Empty, "Purchase Order ID is Empty GUID");
        }
        public async Task CreatePurchaseOrder_Returns_CreatedAtRouteResult()
        {
            //Arrange
            _fixture.MockPurchaseOrderRepository.Setup(x => x.CreatePurchaseOrderAsync(It.IsAny <CreatePurchaseOrderDto>()))
            .ReturnsAsync(_fixture.CreatePurchaseOrderDtoResult);

            var controller = new PurchaseOrderController(_fixture.MockPurchaseOrderRepository.Object);

            //Act
            var result = await controller.CreatePurchaseOrder(_fixture.ValidCreatePurchaseOrderDto, _fixture.ApiVersion);

            //Assert
            var objectResult = result.Should().BeOfType <CreatedAtRouteResult>().Subject;

            objectResult.StatusCode.Should().Be(201);
            objectResult.RouteValues !["id"].Should().Be(4);
Exemple #3
0
        public void TestRemoveItemFromPurchaseOrder()
        {
            var productController = new ProductController(new LoggerStub <ProductController>());
            var supplierControl   = new SupplierController(new LoggerStub <SupplierController>());
            var products          = productController.SearchProducts(string.Empty, true).Result as List <Product>;
            var c         = string.Format("{0:000}", products.Count);
            var suppliers = supplierControl.Search("Test").Result as List <Supplier>;

            Assert.IsTrue(suppliers.Count > 0, "No Test Suppliers please run the create test suppliers test");

            var supplier = suppliers.FirstOrDefault();

            Assert.IsNotNull(supplier, "NULL Value in list of suppliers");
            Assert.IsTrue(!string.IsNullOrEmpty(supplier.Name), "Supplier has no name");
            Assert.IsTrue(!string.IsNullOrEmpty(supplier.SupplierCode), "Supplier has no supplier code");

            var product = new AddProductToSupplierModel
            {
                Description = "Test product",
                Price       = "59.99",
                ProductCode = $"TEST-PRODUCT-CODE-{c}",
                SupplierId  = supplier.Id.ToString()
            };

            Guid productId    = productController.AddProductToSupplier(product).Result;
            var  poController = new PurchaseOrderController(new LoggerStub <PurchaseOrderController>());

            var poId = poController.CreatePurchaseOrder(supplier.Id).Result;

            Assert.IsNotNull(poId, "Purchase order controller returned NULL");
            Assert.AreNotEqual(poId, Guid.Empty, "Purchase Order ID is Empty GUID");
            var poiId = poController.AddProductToPurchaseOrder(poId, productId, 5).Result;

            Assert.IsNotNull(poiId, "Failed to add item to purchase order");
            Assert.AreNotEqual(poiId, Guid.Empty, "Purchase Order Item ID is Empty GUID");

            var removed = poController.RemoveItemFromPurchaseOrder(poId, productId).Result;

            Assert.IsTrue(removed, "Item was not removed from the purchase order");
        }