Example #1
0
        public void GetNumberOfOrders_OrdersExistInDatabase_NumberOfOrdersIsReturned()
        {
            //Arrange
            var viewModel   = new OrderViewModel();
            var ordersToAdd = OrderCreator.CreateOrders_TwoOrdersWithSameReuquestId();

            viewModel.AddNewOrders(ordersToAdd);

            //Action
            int numberOfOrders = viewModel.GetNumberOfOrders();

            //Assert
            Assert.AreEqual(2, numberOfOrders);
        }
Example #2
0
        public void GetAveragePriceOfOrder_OrdersExistInDatabase_AveragePriceIsReturned()
        {
            //Arrange
            var viewModel   = new OrderViewModel();
            var ordersToAdd = OrderCreator.CreateOrders_TwoOrdersWithSameReuquestId();

            viewModel.AddNewOrders(ordersToAdd);
            decimal average = 269.6m;  // calculated based on the orders added into database
                                       // first request => 12 * 12.2 + 10 * 10 = 246.4, second request => 24 * 12.2 = 292.8
                                       // Average = 269.6
            decimal averagePrice = viewModel.GetAveragePriceOfOrder();

            //Assert
            Assert.AreEqual(average, averagePrice);
        }
Example #3
0
        public void FetchAllOrders_OrdersAreInDatabase_AllOrdersAreReturned()
        {
            //Arrange
            var viewModel = new OrderViewModel();
            // create three orders where 2 refere to same request id
            var ordersToAdd = OrderCreator.CreateOrders_TwoOrdersWithSameReuquestId();

            // add them to database
            viewModel.AddNewOrders(ordersToAdd);

            //Action
            var orders = viewModel.GetAllOrders();

            //Assert
            Assert.IsTrue(2 == orders.Count);
        }
Example #4
0
        public void GetOrdersInGivenRange_OrdersExistInDatabase_OrdersInGivenRangeAreReturned()
        {
            //Arrange
            var     viewModel   = new OrderViewModel();
            decimal lowerBound  = 1.5m;
            decimal upperBound  = 5.7m;
            var     ordersToAdd = OrderCreator.CreateOrders_TwoOrdersWithSameReuquestId();


            //Action
            var ordersInGivenRange = viewModel.GetOrdersInGivenRange(lowerBound, upperBound);

            // Assert
            // Orders in range( price >= lowerBound && price <= upperBound) are returned
            ordersInGivenRange.ForEach(order => Assert.IsTrue(order.Price >= lowerBound && order.Price <= upperBound));
        }
Example #5
0
        public void GetTotalPriceOfOrders_OrdersExistInDatabase_NumberOfOrdersIsReturned()
        {
            //Arrange
            var viewModel   = new OrderViewModel();
            var ordersToAdd = OrderCreator.CreateOrders_TwoOrdersWithSameReuquestId();

            viewModel.AddNewOrders(ordersToAdd);
            decimal result = 539.2m;       // calculated based on the orders added into database
                                           // first request => 12 * 12.2m = 146.4, second request => 24 * 12.2 = 292.8, third request => 10*10 = 100
                                           // sum = 539.2
            //Action
            decimal totalPriceOfOrders = viewModel.GetTotalPriceOfOrders();

            //Assert
            Assert.AreEqual(result, totalPriceOfOrders);
        }