public void CanRemoveOrder(int year, int month, int day, int orderNumber, string customerName, string state, decimal taxRate, string productType, decimal area, decimal costPerSquareFoot, decimal laborCostPerSquareFoot, bool expectedResult) { FileOrderRepository repo = new FileOrderRepository(filePath); Order order = new Order(); DateTime date = new DateTime(year, month, day); order.Date = date; order.OrderNumber = orderNumber; order.CustomerName = customerName; order.State = state; order.TaxRate = taxRate; order.ProductType = productType; order.Area = area; order.CostPerSquareFoot = costPerSquareFoot; order.LaborCostPerSquareFoot = laborCostPerSquareFoot; repo.Remove(order); List <Order> orders = repo.ListOrdersForDate(date); Order check = orders[0]; Assert.AreEqual("Ryan", check.CustomerName); Assert.AreEqual("OH", check.State); Assert.AreEqual(1, orders.Count()); }
public void FileAdd() { CalculateTotals calculator = new CalculateTotals(); DateTime orderDate = DateTime.Parse("06/01/2013"); FileOrderRepository data = new FileOrderRepository(_path); Order testOrder = new Order() { OrderDate = new DateTime(2013, 06, 01), CustomerName = "Scrooge McDuck", State = "MN", TaxRate = 2, ProductType = "Tile", Area = 500, CostPerSquareFoot = 1, LaborCostPerSquareFoot = 1 }; data.AddOrder(testOrder, orderDate); Assert.AreEqual("Scrooge McDuck", testOrder.CustomerName); Assert.AreEqual(2, testOrder.OrderNumber); Assert.AreEqual(500, calculator.MaterialCost(testOrder)); Assert.AreEqual(500, calculator.LaborCost(testOrder)); Assert.AreEqual(20, calculator.Tax(testOrder)); Assert.AreEqual(1020, calculator.Total(testOrder)); }
public static OrderManager Create() { string mode = ConfigurationManager.AppSettings["Mode"].ToString(); IOrderRepository orderRepository; ITaxRepository taxRepository; IProductRepository productRepository; switch (mode) { case "Test": orderRepository = new TestOrderRepository(); taxRepository = new TestTaxRepository(); productRepository = new TestProductRepository(); return(new OrderManager(orderRepository, taxRepository, productRepository)); case "Production": orderRepository = new FileOrderRepository(); taxRepository = new TaxRepository(); productRepository = new ProductRepository(); return(new OrderManager(orderRepository, taxRepository, productRepository)); default: throw new Exception("Mode value in app config is not valid"); } }
public void CanAddOrderToFile() { DateTime orderDate = DateTime.Parse("10/16/2016"); FileOrderRepository repo = new FileOrderRepository(); List <Order> orders = repo.List(orderDate); Order newOrder = new Order(); newOrder.OrderNumber = 5; newOrder.Name = "Rickstar Fredders"; newOrder.State = "MN"; newOrder.OrderDate = orderDate; newOrder.Area = 222; newOrder.Type = ProductType.Tile; newOrder.CostMaterial = 777.00M; newOrder.CostLabor = 921.30M; repo.Add(newOrder); orders = repo.List(orderDate); Assert.AreEqual(5, orders.Count()); Order check = orders[4]; Assert.AreEqual(5, check.OrderNumber); Assert.AreEqual("Rickstar Fredders", check.Name); Assert.AreEqual("MN", check.State); Assert.AreEqual(new DateTime(2016, 10, 16), check.OrderDate); Assert.AreEqual(222, check.Area); Assert.AreEqual(ProductType.Tile, check.Type); Assert.AreEqual(777.00, check.CostMaterial); Assert.AreEqual(921.30, check.CostLabor); }
public void CanEditOrder() { DateTime orderDate = DateTime.Parse("10/16/2016"); FileOrderRepository repo = new FileOrderRepository(); List <Order> orders = repo.List(orderDate); Order editedOrder = orders[0]; editedOrder.Area = 7000; repo.Edit(editedOrder, 1); orders = repo.List(orderDate); Assert.AreEqual(4, orders.Count); Order check = orders[0]; Assert.AreEqual(1, check.OrderNumber); Assert.AreEqual("James Camerson", check.Name); Assert.AreEqual("MN", check.State); Assert.AreEqual(new DateTime(2016, 10, 16), check.OrderDate); Assert.AreEqual(7000, check.Area); Assert.AreEqual(ProductType.Carpet, check.Type); Assert.AreEqual(112.50, check.CostMaterial); Assert.AreEqual(105.00, check.CostLabor); Assert.AreEqual(15.23, check.Tax); Assert.AreEqual(232.73, check.TotalCost); }
public void NoDateTest() { DateTime orderDate = DateTime.Parse("05/05/2005"); FileOrderRepository data = new FileOrderRepository(_path); List <Order> orders = data.ShowOrders(orderDate); Assert.IsNull(orders); }
public void LoadIndivOrder() { DateTime orderDate = DateTime.Parse("06/01/2013"); int orderNumber = 1; FileOrderRepository data = new FileOrderRepository(_path); Order order = data.FindIndivOrder(orderNumber, orderDate); Assert.AreEqual("Wise", order.CustomerName); Assert.AreEqual("Wood", order.ProductType); }
public void LoadOrders() { DateTime orderDate = DateTime.Parse("06/01/2013"); FileOrderRepository data = new FileOrderRepository(@"C:\Data\"); List <Order> orders = data.ShowOrders(orderDate); Assert.AreEqual("Wise", orders[0].CustomerName); Assert.AreEqual(1, orders[0].OrderNumber); Assert.AreEqual(6.25, orders[0].TaxRate); }
public void FileDelete() { DateTime orderDate = DateTime.Parse("06/01/2013"); int orderNumber = 1; FileOrderRepository data = new FileOrderRepository(_path); data.DeleteOrder(orderDate, orderNumber); List <Order> orders = data.ShowOrders(orderDate); Assert.AreEqual(0, orders.Count); }
public void CanGetOrderListForDate(int year, int month, int day, bool expetctedValue) { DateTime date = new DateTime(year, month, day); List <Order> orders = new List <Order>(); FileOrderRepository repo = new FileOrderRepository(filePath); var orderList = repo.ListOrdersForDate(date); foreach (Order ord in orderList) { orders.Add(ord); } Assert.AreEqual(2, orders.Count()); Assert.IsTrue(expetctedValue); }
public void FileEdit() { DateTime orderDate = DateTime.Parse("06/01/2013"); int orderNumber = 1; FileOrderRepository data = new FileOrderRepository(_path); Order order = data.FindIndivOrder(orderNumber, orderDate); order.CustomerName = "BeastieBoi"; order.ProductType = "Tile"; data.EditOrder(orderDate, order); Order editedOrder = data.FindIndivOrder(orderNumber, orderDate); Assert.AreEqual("BeastieBoi", editedOrder.CustomerName); Assert.AreEqual("Tile", editedOrder.ProductType); }
public void CanAddOrder(int year, int month, int day, int orderNumber, string customerName, string state, decimal taxRate, string productType, decimal area, decimal costPerSquareFoot, decimal laborCostPerSquareFoot, bool expectedResult) { DateTime date = new DateTime(year, month, day); Order order = new Order(); order.Date = date; order.OrderNumber = orderNumber; order.CustomerName = customerName; order.State = state; order.TaxRate = taxRate; order.ProductType = productType; order.Area = area; order.CostPerSquareFoot = costPerSquareFoot; order.LaborCostPerSquareFoot = laborCostPerSquareFoot; FileOrderRepository repo = new FileOrderRepository(filePath); bool actual = repo.Add(order); Assert.AreEqual(expectedResult, actual); }
public void CanReadDataFromFile() { DateTime orderDate = DateTime.Parse("10/16/2016"); FileOrderRepository repo = new FileOrderRepository(); List <Order> orders = repo.List(orderDate); Assert.AreEqual(4, orders.Count()); Order check = orders[2]; Assert.AreEqual(3, check.OrderNumber); Assert.AreEqual("Nate Ruess", check.Name); Assert.AreEqual("MN", check.State); Assert.AreEqual(new DateTime(2016, 10, 16), check.OrderDate); Assert.AreEqual(500, check.Area); Assert.AreEqual(1750.00, check.CostMaterial); Assert.AreEqual(2075.00, check.CostLabor); Assert.AreEqual(267.75, check.Tax); Assert.AreEqual(4092.75, check.TotalCost); }
public void CanDeleteOrder() { DateTime orderDate = DateTime.Parse("10/16/2016"); FileOrderRepository repo = new FileOrderRepository(); List <Order> orders = repo.List(orderDate); repo.Delete(orderDate, orders[0].OrderNumber); orders = repo.List(orderDate); Assert.AreEqual(3, orders.Count); Order check = orders[0]; Assert.AreEqual(2, check.OrderNumber); Assert.AreEqual("Steve Irwin", check.Name); Assert.AreEqual("MN", check.State); Assert.AreEqual(new DateTime(2016, 10, 16), check.OrderDate); Assert.AreEqual(216, check.Area); Assert.AreEqual(ProductType.Laminate, check.Type); Assert.AreEqual(378.00, check.CostMaterial); Assert.AreEqual(453.00, check.CostLabor); Assert.AreEqual(58.21, check.Tax); Assert.AreEqual(889.81, check.TotalCost); }
public void CanEditOrder(int year, int month, int day, string name, string productType, string stateAbrr, decimal area, bool expectedValue) { FileOrderRepository repo = new FileOrderRepository(filePath); DateTime date = new DateTime(year, month, day); List <Order> orders = repo.ListOrdersForDate(date); Order editedOrder = orders[0]; editedOrder.CustomerName = name; editedOrder.ProductType = productType; editedOrder.State = stateAbrr; editedOrder.Area = area; repo.Edit(editedOrder); repo.ListOrdersForDate(date); Order check = orders[0]; Assert.AreEqual("Nikki", check.CustomerName); Assert.AreEqual("Carpet", check.ProductType); Assert.AreEqual("MI", check.State); Assert.AreEqual(120.00, check.Area); }