Exemplo n.º 1
0
        public void When_I_leave_the_congestion_charge_zone_at_P0_P1_P2(string p0, string p1, int p2)
        {
            _end = ParseToDate(p0, p1, p2);

                var congestionRateStore = new CongestionRateStore(_rates);
                var congestionCalculator = new CongestionChargeCalculator(congestionRateStore, new InvoiceBuilder());
                _results = congestionCalculator.CalculateCost(_start, _end, _vehicleType);
        }
        public void Returns_Correct_Filtered_Rates()
        {

            var congestioNRateStore = new CongestionRateStore(BuildRealExamples());
            var monday = new DateTime(2015, 07, 20, 10, 0, 0, 0);
            var rates = congestioNRateStore.GetRates(monday, VehicleType.Car);
            Assert.AreEqual(2, rates.Count);

            var amRate = rates.Find(r => r.Description == "AM rate");
            var pmRate = rates.Find(r => r.Description == "PM rate");

            Assert.AreEqual(2m, amRate.Rate);
            Assert.AreEqual(VehicleType.FullRateVehicle, amRate.Vehicle);

            Assert.AreEqual(2.5m, pmRate.Rate);
            Assert.AreEqual(VehicleType.FullRateVehicle, pmRate.Vehicle);
        }