コード例 #1
0
        public void CalculatorReturnsResult_WithOneWayFlights_2()
        {
            var input = LoadTestDataSet_WithOneWayFlights_1();

            var dataSanitizer  = new FlightDataSanitizer();
            var dataCalculator = new FlightDataCalculator(dataSanitizer);

            var result = dataCalculator.CalculatePriceRange(input);

            Assert.AreEqual(10.26m, result.MinimumPrice);
            Assert.AreEqual(82.92m, result.MaximumPrice);
        }
コード例 #2
0
        public void CalculatorReturnsConvertedResult()
        {
            var input = new FlightPriceRangeContract {
                MinimumPrice = 1m, MaximumPrice = 2.1m
            };
            var dataSanitizer  = new FlightDataSanitizer();
            var dataCalculator = new FlightDataCalculator(dataSanitizer);
            var result         = dataCalculator.ConvertPriceRange(input, 1.2345m);

            Assert.AreEqual(1.23m, result.MinimumPrice);
            Assert.AreEqual(2.59m, result.MaximumPrice);
        }
コード例 #3
0
        public void IntegrationTestForLONtoBERFlights()
        {
            var _flightPricesRepository = new FlightCsvRepository("prices", TestSetup.GiveMeALocalDummyPathMapper("prices"));
            var _currencyRateRepository = new CurrencyRateCsvRepository("currencies", "EUR", TestSetup.GiveMeALocalDummyPathMapper("currencies"));
            var _dataSanitizer          = new FlightDataSanitizer();
            var _priceRangeCalculator   = new FlightDataCalculator(_dataSanitizer);

            var flightsAndPrices = _flightPricesRepository.GetFlightsFromOriginToDestination("LON", "BER");
            var priceRange       = _priceRangeCalculator.CalculatePriceRange(flightsAndPrices);

            Assert.IsFalse(priceRange.MaximumPrice > 200);
            Assert.IsFalse(priceRange.MinimumPrice < 20);
        }