def test_conflict_with_another(self): assert not is_valid_booking_time(2, TODAY + timedelta(3), time(8, 0), time(9, 50)) assert not is_valid_booking_time(2, TODAY + timedelta(3), time(8, 0), time(10, 50)) assert not is_valid_booking_time(0, TODAY + timedelta(3), time(11, 00), time(11, 50))
def test_between_two_bookings(self): assert is_valid_booking_time(0, TODAY + timedelta(3), time(10, 0), time(10, 50))
def test_on_an_empty_day(self): assert is_valid_booking_time(2, TODAY + timedelta(7), time(9, 0), time(10, 50))
def test_dual_in_time_but_room_differ(self): assert is_valid_booking_time(1, TODAY + timedelta(3), time(9, 00), time(10, 50))
def test_right_after_another_booking(self): assert not is_valid_booking_time(2, TODAY + timedelta(3), time(9, 0), time(10, 50))
def test_time_too_long(self): assert not is_valid_booking_time(1, TODAY + timedelta(4), time(16, 0), time(20, 50))
def test_time_span_just_right(self): assert is_valid_booking_time(1, TODAY + timedelta(4), time(17, 0), time(20, 50))
def test_not_in_the_working_hour(self): assert not is_valid_booking_time(1, TODAY + timedelta(4), time(21, 0), time(22, 50))
def test_not_match_current_pattern(self): assert not is_valid_booking_time(1, TODAY + timedelta(4), time(16, 20), time(17, 50)) assert not is_valid_booking_time(1, TODAY + timedelta(4), time(16, 0), time(17, 40))
def test_just_in_late_working_hour(self): assert is_valid_booking_time(1, TODAY + timedelta(4), time(21, 0), time(21, 50))
def test_just_in_early_working_hour(self): assert is_valid_booking_time(1, TODAY + timedelta(4), time(8, 0), time(8, 50))
def test_start_later_than_end(self): assert not is_valid_booking_time(1, TODAY + timedelta(4), time(9, 0), time(8, 50))
def test_later_than_book_day_farthest(self): assert not is_valid_booking_time(1, TODAY + timedelta(11), time(8, 0), time(9, 50))
def test_earlier_than_nearest_day(self): assert not is_valid_booking_time(1, TODAY + timedelta(1), time(8, 0), time(9, 50))