Пример #1
0
def test_room_availability():
    # Given
    room = Room(101, 2)
    date = datetime.utcnow()

    # When
    availability = room.is_available_this_day(date)
    # Then
    assert availability is True
Пример #2
0
def test_room_booking():
    # Given
    date = datetime.utcnow()
    room = Room(101, 2)
    room.book(date)

    # When
    availability = room.is_available_this_day(date)

    # Then
    assert availability is False
Пример #3
0
def test_book_a_room_for_3_nights():
    # Given
    to_booked_room_number = 102
    number_of_guests = 4
    checkin_date = datetime(2019, 6, 1)
    checkout_date = datetime(2019, 6, 5)

    booking = Booking(to_booked_room_number, number_of_guests, checkin_date, checkout_date)

    room_101 = Room(101, room_capacity=2)
    room_102 = Room(102, room_capacity=4)

    hotel_cuzco = Hotel([room_101, room_102])

    # When
    hotel_cuzco.book_room(booking)

    # Then
    assert not room_102.is_available_this_day(datetime(2019, 6, 3))
    assert room_102.is_available_this_day(datetime(2019, 5, 31))
    assert room_102.is_available_this_day(datetime(2019, 6, 5))
Пример #4
0
def test_room_is_available_at_04042019():
    # Given
    booked_date1 = datetime(2019, 4, 3)
    booked_date2 = datetime(2019, 4, 5)
    available_date = datetime(2019, 4, 4)

    room = Room(101, 2)
    room.book(booked_date1)
    room.book(booked_date2)

    # When
    availability = room.is_available_this_day(available_date)

    # Then
    assert availability is True