public async Task GivenQuoteofOneVechicleShouldReturnValueBasedOnLowerPrice() { _proxy.GetQuote().Returns(Task.FromResult(GetSingleQoute())); var passengerService = new PassengerService(_proxy); var result = await passengerService.GetQuote(2); result.Count().Should().Be(1); result.First().TotalPrice.Should().Be(4); }
public async Task <IEnumerable <ListingDto> > GetQuote(int passengerNumber) { var quote = await _jayrideChallegeProxy.GetQuote(); var filteredListing = quote.Listings.Where(r => r.VehicleType.MaxPassengers >= passengerNumber); var listingDtos = filteredListing.OrderBy(r => r.PricePerPassenger).Select(p => new ListingDto { Name = p.Name, TotalPrice = p.PricePerPassenger * passengerNumber, VehicleType = p.VehicleType }).ToList(); return(listingDtos); }