Пример #1
0
        public void Execute()
        {
            OperationsManager manager  = RepoFactory.CreateOrderRepo("");
            AddOrderResponse  response = new AddOrderResponse();

            // get order date
            _orderDate = GetOrderDate(manager);

            //reload manager with order date passed in
            manager = RepoFactory.CreateOrderRepo(_orderDate);
            promptForOrderDetails = $"Enter new order details for order on {_orderDate.Substring(0, 2)}/{_orderDate.Substring(2, 2)}/{_orderDate.Substring(4, 4)}";

            // get customer name
            _customerName = GetOrderCustomerName(manager);

            // get state
            _stateAbbreviation = GetOrderState(manager);

            // get product type
            _productType = GetOrderProductType(manager);

            //get area
            _area = GetOrderArea(manager);

            //confirm add
            response = ConfirmAddOrder(manager, response);

            //execute/abort add
            ExecuteOrAbortAddOrder(manager, response);
        }
Пример #2
0
        public void CanEditOrder()
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            Order order       = new Order();
            int   orderNumber = 1;

            order.OrderNumber            = orderNumber;
            order.CustomerName           = "Glencliff High School";
            order.State                  = manager.LookupOrder(orderNumber).Order.State;
            order.TaxRate                = manager.LookupOrder(orderNumber).Order.TaxRate;
            order.ProductType            = manager.LookupOrder(orderNumber).Order.ProductType;
            order.Area                   = manager.LookupOrder(orderNumber).Order.Area;
            order.CostPerSquareFoot      = manager.GetSingleProduct(order.ProductType).CostPerSquareFoot;
            order.LaborCostPerSquareFoot = manager.GetSingleProduct(order.ProductType).LaborCostPerSquareFoot;
            order.MaterialCost           = order.Area * order.CostPerSquareFoot;
            order.LaborCost              = order.Area * order.LaborCostPerSquareFoot;
            order.Tax   = (order.MaterialCost + order.LaborCost) * (order.TaxRate / 100);
            order.Total = order.MaterialCost + order.LaborCost + order.Tax;

            manager.EditOrder(order);

            Assert.AreNotEqual("North Oldham High School", manager.LoadListOfOrders("").Orders[1].CustomerName);
            Assert.AreEqual("Glencliff High School", manager.LoadListOfOrders("").Orders[1].CustomerName);
        }
Пример #3
0
        public void CanRemoveOrder()
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            manager.RemoveOrder(2);

            Assert.AreEqual(1, manager.LoadListOfOrders("").Orders.Count());
        }
Пример #4
0
        public void CanCheckAddState(string stateAbbreviation, bool expectedResult)
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            AddOrderResponse response = manager.CheckAddState(stateAbbreviation);

            Assert.AreEqual(expectedResult, response.Success);
        }
Пример #5
0
        public void CanLookupSingleOrder()
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            OrderLookupResponse response = manager.LookupOrder(1);

            Assert.IsNotNull(response.Order);
            Assert.IsTrue(response.Success);
            Assert.AreEqual("North Oldham High School", response.Order.CustomerName);
        }
Пример #6
0
        public void CanLoadOrderList()
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            OrderListLookupResponse response = manager.LoadListOfOrders("");

            Assert.IsNotEmpty(response.Orders);
            Assert.IsTrue(response.Success);
            Assert.AreEqual("North Oldham High School", response.Orders[0].CustomerName);
        }
Пример #7
0
        public void Execute()
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            //get date
            string _orderDate = GetDisplayOrdersDate(manager);

            //reload manager with order date
            manager = RepoFactory.CreateOrderRepo(_orderDate);

            //get list of orders
            OrderListLookupResponse response = manager.LoadListOfOrders(_orderDate);

            //show list success
            DisplayList(_orderDate, response);
        }
Пример #8
0
        public void Execute()
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            //get date
            string _orderDate = GetRemoveOrderDate(manager);

            //reload manager with order date
            manager = RepoFactory.CreateOrderRepo(_orderDate);

            //get order number
            _orderNumber = GetRemoveOrderNumber(_orderDate);

            //lookup order
            OrderLookupResponse response = manager.LookupOrder(_orderNumber);

            //confirm and execute/abort remove order
            ConfirmRemoveOrder(manager, response);
        }
Пример #9
0
        public void Execute()
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            //get date
            _orderDate = GetEditOrderDate(manager);

            //reload manager with order date
            manager = RepoFactory.CreateOrderRepo(_orderDate);

            //get order list
            OrderListLookupResponse _orders = manager.LoadListOfOrders(_orderDate);

            //get order number
            _orderNumber = GetEditOrderNumber(_orderDate);

            //confirm and execute/abort edit order
            OrderLookupResponse response = new OrderLookupResponse();

            EditOrder(manager, _orders, response);
        }
Пример #10
0
        public void CanAddOrder(string customerName, string stateAbbreviation, string productType, decimal area)
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            Order order = new Order();

            order.OrderNumber            = manager.LoadListOfOrders("").Orders.Count() + 1;
            order.CustomerName           = customerName;
            order.State                  = stateAbbreviation;
            order.TaxRate                = manager.GetSingleState(stateAbbreviation).TaxRate;
            order.ProductType            = productType;
            order.Area                   = area;
            order.CostPerSquareFoot      = manager.GetSingleProduct(productType).CostPerSquareFoot;
            order.LaborCostPerSquareFoot = manager.GetSingleProduct(productType).LaborCostPerSquareFoot;
            order.MaterialCost           = order.Area * order.CostPerSquareFoot;
            order.LaborCost              = order.Area * order.LaborCostPerSquareFoot;
            order.Tax   = (order.MaterialCost + order.LaborCost) * (order.TaxRate / 100);
            order.Total = order.MaterialCost + order.LaborCost + order.Tax;

            manager.AddOrder(order);

            Assert.AreEqual(3, manager.LoadListOfOrders("").Orders.Count());
            Assert.AreEqual("My Company", manager.LoadListOfOrders("").Orders[2].CustomerName);
        }