Пример #1
0
        public void FamilyRental_CalculatePrice_RentalListFull_Succeeds()
        {
            //Arrange
            decimal      discount      = new decimal(0.30);
            Rental       rentalByHour  = new Rental(5, 3);
            Rental       rentalByDay   = new Rental(20, 2);
            Rental       rentalByWeek  = new Rental(60, 1);
            FamilyRental familyRental  = new FamilyRental(discount);
            FamilyRental familyRental2 = new FamilyRental(discount);

            familyRental2.AddRental(rentalByHour);
            familyRental2.AddRental(rentalByDay);
            familyRental2.AddRental(rentalByWeek);

            familyRental.AddRental(rentalByHour);
            familyRental.AddRental(rentalByDay);
            familyRental.AddRental(rentalByWeek);
            familyRental.AddRental(familyRental2);

            //Act
            var result = familyRental.CalculatePrice();

            //Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(136.85, (double)result);
        }
Пример #2
0
        public void FamilyRental_CalculatePrice_RentalListNotFull_Fails()
        {
            //Arrange
            decimal      discount     = new decimal(0.30);
            Rental       rentalByHour = new Rental(5, 3);
            Rental       rentalByDay  = new Rental(20, 2);
            Rental       rentalByWeek = new Rental(60, 1);
            FamilyRental familyRental = new FamilyRental(discount);

            familyRental.AddRental(rentalByHour);
            familyRental.AddRental(rentalByDay);

            //Act & Assert
            Assert.ThrowsException <IndexOutOfRangeException>(() => familyRental.CalculatePrice());
        }