コード例 #1
0
        public void CalculateTotalCharge_ForSingleDay_ChargedAccordingly()
        {
            var calculator = new LongStayParkingChargeCalculator(DAY_RATE);

            var result = calculator.CalculateTotalCharge(new DateTime(2021, 1, 25, 7, 50, 0), new DateTime(2021, 1, 25, 22, 0, 0));

            Assert.AreEqual(DAY_RATE * 1, result);
        }
コード例 #2
0
        public void CalculateTotalCharge_ForSeveralDaysAcrossTwoMonths_ChargedAccordingly()
        {
            var calculator = new LongStayParkingChargeCalculator(DAY_RATE);

            var result = calculator.CalculateTotalCharge(new DateTime(2021, 1, 30, 7, 50, 0), new DateTime(2021, 2, 1, 5, 20, 0));

            Assert.AreEqual(DAY_RATE * 3, result);
        }
        public void The_LongStayParkingChargeCalculator_correctly_calculates_correct_parking_charge(ChargeType chargeType, DateTime chargeStart, DateTime chargeEnd, decimal expectedCost)
        {
            var longStayParkingChargeCalculator = new LongStayParkingChargeCalculator();
            var actualCost = longStayParkingChargeCalculator.CalculateChargeGbp(new ParkingChargeInstruction
            {
                ChargeType  = chargeType,
                ChargeStart = chargeStart,
                ChargeEnd   = chargeEnd
            });

            actualCost.Should().Be(expectedCost);
        }