示例#1
0
        private GuestCreator CreateGuest()
        {
            var creator     = new FakeReservationCreator().AddRoom();
            var reservation = creator.GetReservation();

            return(new GuestCreator(reservation, _priceForStay));
        }
示例#2
0
 public ReservationTests()
 {
     _checkIn  = DateTime.Now.AddDays(1);
     _checkOut = DateTime.Now.AddDays(6);
     _fakeReservationCreator = new FakeReservationCreator(_checkIn, _checkOut);
     _customer = new Customer("CustomerX");
 }
示例#3
0
 public PriceCalculatorTests()
 {
     _creator         = new FakeReservationCreator();
     _priceCalculator = new PriceCalculator(new List <PriceRule>
     {
         new PriceRule(RuleName.PriceWhenChild, RuleType.DecreasingByPercentage, "Reguła dla dzieci", 50, 1, true),
         new PriceRule(RuleName.PriceWhenNewlywed, RuleType.DecreasingByPercentage, "Reguła dla nowożeńców", 100, 2, false),
         new PriceRule(RuleName.PriceWhenBreakfest, RuleType.IncreasingByValue, "Reguła dla śniadań", 10, 3, true)
     });
 }
示例#4
0
        public void CalculateRoomPrice_Should_CalculateCorrectPrice()
        {
            //Arrange
            var creator         = new FakeReservationCreator().AddRoom().AddGuest().AddGuest();
            var reservationRoom = creator.GetReservation().ReservationRooms.First();

            //Act
            var actual   = _priceCalculator.CalculateRoomPrice(reservationRoom);
            var expected = 100m;

            //Assert
            actual.Should().Be(expected);
        }
示例#5
0
        public void DeleteRoom_Should_DeleteReservationRoom()
        {
            //Arrange
            var creator     = new FakeReservationCreator(_checkIn, _checkOut).AddRoom();
            var reservation = creator.GetReservation();
            var room        = reservation.ReservationRooms.First().Room;

            //Act
            reservation.DeleteRoom(room);
            var deletedRoom = reservation.ReservationRooms.FirstOrDefault(x => x.Room == room);

            //Assert
            deletedRoom.Should().BeNull();
        }