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);
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"); }