Exemplo n.º 1
0
        public void GivenDistanceAndTimeToInvoiceGenerator_WhenCalculate_ShouldReturnTotalFare()
        {
            double cabRunningDistance = 5.0;
            double cabRunningTime     = 2.0;

            Assert.AreEqual(52, invoiceGenerator.CalculateCabFare(CabRide.NORMAL, cabRunningDistance, cabRunningTime));
        }
Exemplo n.º 2
0
        public void GivenDistanceAndTimeOfMultiRidesToUserIdShouldTotalFare()
        {
            string           userId     = "sanju@357";
            InvoiceGenerator invoiceGen = new InvoiceGenerator();

            MultipleRides[] rides =
            {
                new MultipleRides(3.0, 1.0),
                new MultipleRides(3.5, 1.5)
            };
            RideRepository rideRepository = new RideRepository();

            rideRepository.AddInRide(userId, rides);
            InvoiceSummary retunTotal = invoiceGen.CalculateCabFare(rideRepository.GetRides(userId));

            Assert.AreEqual(67.5, retunTotal.totalFare);
        }
Exemplo n.º 3
0
        public void GivenDistanceAndTimeForMultiRidesToUserId_ShouldReturnTotalFare()
        {
            string           userId     = "manoj12345";
            InvoiceGenerator invoiceGen = new InvoiceGenerator();

            MultipleRides[] rides =
            {
                new MultipleRides(3.0, 1.0),
                new MultipleRides(3.5, 1.5),
                new MultipleRides(8.0, 3.5)
            };
            RideRepository rideRepository = new RideRepository();

            rideRepository.AddInRide(userId, rides);
            InvoiceSummary retunTotal = invoiceGen.CalculateCabFare(rideRepository.GetRides(userId));

            Assert.AreEqual(151, retunTotal.totalFare);
        }
Exemplo n.º 4
0
        public void GivenDistanceAndTimeOfMultiRidesToInvoiceGeneratorShouldInhancedInvoice()
        {
            bool             exceptedInvoice = true;
            bool             returnInvoice   = false;
            InvoiceGenerator invoiceGen      = new InvoiceGenerator();

            MultipleRides[] rides =
            {
                new MultipleRides(5.5, 2.5), new MultipleRides(3.0, 1.0)
            };
            InvoiceSummary returnSummary   = invoiceGen.CalculateCabFare(rides);
            InvoiceSummary expectedSummery = new InvoiceSummary
            {
                totalRides         = 2,
                totalFare          = 88.5,
                averageFarePerRide = 44.25
            };

            if (returnSummary.totalRides == expectedSummery.totalRides && returnSummary.totalFare == expectedSummery.totalFare && returnSummary.averageFarePerRide == expectedSummery.averageFarePerRide)
            {
                returnInvoice = true;
            }
            Assert.AreEqual(exceptedInvoice, returnInvoice);
        }