public void GivenDistanceAndTime_ShouldReturnTotalFareForPremiumRide() { ///Arrange double distance = 10; int time = 10; double expected = 170; ///Act this.invoiceGenerator = new InvoiceGenerator(RideType.PREMIUM); double actual = invoiceGenerator.CalculateTotalFare(distance, time); ///Assert Assert.AreEqual(expected, actual); }
public void GivenMultipleRide_ShouldReturnNumberOfRideAggregrateFareAndAverageFare() { /// Arrange invoiceGenerator = new InvoiceGenerator(RideType.NORMAL); Ride[] rides = { new Ride(2.0, 9), new Ride(0.1, 1), new Ride(0.2, 1) }; /// Act InvoiceSummary invoiceSummary = invoiceGenerator.CalculateTotalFare(rides); var resultHashCode = invoiceSummary.GetHashCode(); InvoiceSummary expectedInvoiceSummary = new InvoiceSummary(3, 39.0, 13.0); var resultExpectedHashCode = expectedInvoiceSummary.GetHashCode(); /// Assert Assert.AreEqual(invoiceSummary, expectedInvoiceSummary); }
public void GivenDistanceAndTime_ShouldReturnTotalFareForTheJourney() { ///Act double distance = 5.0; int time = 6; // Instantinating the object with normal ride type invoiceGenerator = new InvoiceGenerator(RideType.NORMAL); double actualTotalFare = invoiceGenerator.CalculateTotalFare(distance, time); double expectedlTotalFare = 56; ///Assert Assert.AreEqual(actualTotalFare, expectedlTotalFare); }
public void GivenUserId_InvoiceServiceGetsListOfRides_ShouldReturnInvoiceSummary() { /// Arrange ///initialising the instance of the invoice generator class /// Creating the instance of the ride repository. /// Initialising the ride array with details of the ride. /// Adding the ride data for the user to the ride repository ///Getting the ride data from the ride repository class. invoiceGenerator = new InvoiceGenerator(RideType.NORMAL); RideRepository repository = new RideRepository(); string userId = "xyz@12"; Ride[] rides = { new Ride(2.0, 9), new Ride(0.1, 1), new Ride(0.2, 1) }; repository.AddRide(userId, rides); ///Act Ride[] rideData = repository.GetRides(userId); InvoiceSummary invoiceSummary = invoiceGenerator.CalculateTotalFare(rideData); InvoiceSummary expectedInvoiceSummary = new InvoiceSummary(3, 39.0, 13.0); /// Assert Assert.AreEqual(expectedInvoiceSummary, invoiceSummary); }