public void FinalizeFinalizedRentalThrowsRentalIsAlreadyFinalizedException() { RentalBeginning beginning = new RentalBeginning(this.RentalOperator); RentalModality rentalModality = new RentalByWeek(new Money(TestsConstants.RENTAL_BY_WEEK_AMOUNT, TestsConstants.RENTAL_BY_WEEK_TYPE_OF_CURRENCY)); IRental rental = new Rental(this.Client, beginning, this.Bike, rentalModality); this.RentalOperator.FinalizeRental(this.Client, rental); Assert.That(() => this.RentalOperator.FinalizeRental(this.Client, rental), Throws.TypeOf <RentalIsAlreadyFinalizedException>()); }
public void SetUp() { this.MockClient = new Mock <IClient>(); this.MockRentalOperator = new Mock <IRentalOperator>(); RentalBeginning rentalBeginning = new RentalBeginning(this.MockRentalOperator.Object); BikeSpecifications bikeSpecifications = new BikeSpecifications(TestsConstants.BIKE_BRAND, TestsConstants.BIKE_MODEL, TestsConstants.BIKE_COLOR); Bike bike = new Bike(TestsConstants.BIKE_IDENTIFICATION_CODE, bikeSpecifications); RentalModality rentalModality = new RentalByHour(new Money(TestsConstants.RENTAL_BY_HOUR_AMOUNT, TestsConstants.RENTAL_BY_HOUR_TYPE_OF_CURRENCY)); this.Rental = new Rental(this.MockClient.Object, rentalBeginning, bike, rentalModality); }
public void FinalizeNotFinalizedRental() { RentalBeginning beginning = new RentalBeginning(this.RentalOperator); RentalModality rentalModality = new RentalByWeek(new Money(TestsConstants.RENTAL_BY_WEEK_AMOUNT, TestsConstants.RENTAL_BY_WEEK_TYPE_OF_CURRENCY)); IRental rental = new Rental(this.Client, beginning, this.Bike, rentalModality); RentalFinalization rentalFinalization = this.RentalOperator.FinalizeRental(this.Client, rental); Assert.AreEqual(rentalFinalization, rental.Finalization); Assert.AreEqual(this.RentalOperator, rental.Finalization.RentalOperatorWhoFinalizedRental); Assert.AreEqual(this.Client, rental.Finalization.ClientWhoFinalizedRental); Assert.AreEqual(BikeState.Free, this.Bike.State); Assert.AreEqual(null, this.Bike.Rental); }