Example #1
0
    def test_table_booking_mode_inherit_can_be_used(self):
        chart_key = self.create_test_chart_with_tables()

        event = self.client.events.create(
            chart_key, table_booking_config=TableBookingConfig.inherit())

        assert_that(event.key).is_not_blank()
        assert_that(event.table_booking_config).is_equal_to(
            TableBookingConfig.inherit())
Example #2
0
    def test_table_booking_config_can_be_passed_in(self):
        chart_key = self.create_test_chart_with_tables()
        events = self.client.events.create_multiple(chart_key, [
            EventProperties(table_booking_config=TableBookingConfig.custom({"T1": "BY_TABLE", "T2": "BY_SEAT"})),
            EventProperties(table_booking_config=TableBookingConfig.custom({"T1": "BY_SEAT", "T2": "BY_TABLE"}))
        ])

        assert_that(events).extracting("table_booking_config").contains_exactly(
            TableBookingConfig.custom({"T1": "BY_TABLE", "T2": "BY_SEAT"}),
            TableBookingConfig.custom({"T1": "BY_SEAT", "T2": "BY_TABLE"})
        )
Example #3
0
    def test_notPresentOnChartAnymore(self):
        chart_key = self.create_test_chart_with_tables()
        event = self.client.events.create(
            chart_key, table_booking_config=TableBookingConfig.all_by_table())
        self.client.events.book(event.key, ["T1"])
        self.client.events.update(
            event.key, table_booking_config=TableBookingConfig.all_by_seat())

        status_changes = self.client.events.status_changes(event.key).list()
        status_change = status_changes[0]

        assert_that(status_change.is_present_on_chart).is_false()
        assert_that(status_change.not_present_on_chart_reason).is_equal_to(
            "SWITCHED_TO_BOOK_BY_SEAT")
Example #4
0
    def test_updateTableBookingModes(self):
        chart_key = self.create_test_chart_with_tables()
        event = self.client.events.create(
            chart_key,
            table_booking_config=TableBookingConfig.custom({"T1": "BY_TABLE"}))

        self.client.events.update(
            event.key,
            table_booking_config=TableBookingConfig.custom({"T1": "BY_SEAT"}))

        retrieved_event = self.client.events.retrieve(event.key)
        assert_that(retrieved_event.table_booking_config).is_equal_to(
            TableBookingConfig.custom({"T1": "BY_SEAT"}))
        assert_that(
            retrieved_event.updated_on).is_between_now_minus_and_plus_minutes(
                datetime.utcnow(), 1)
Example #5
0
    def test_table_booking_mode_is_optional(self):
        chart_key = self.create_test_chart_with_tables()
        table_booking_config = TableBookingConfig.custom({"T1": "BY_TABLE", "T2": "BY_SEAT"})

        season = self.client.seasons.create(chart_key, table_booking_config=table_booking_config)

        assert_that(season.table_booking_config).is_equal_to(table_booking_config)
Example #6
0
    def test_table_booking_mode_custom_can_be_used(self):
        chart_key = self.create_test_chart_with_tables()
        table_booking_config = TableBookingConfig.custom({
            "T1": "BY_TABLE",
            "T2": "BY_SEAT"
        })

        event = self.client.events.create(
            chart_key, table_booking_config=table_booking_config)

        assert_that(event.key).is_not_blank()
        assert_that(
            event.table_booking_config).is_equal_to(table_booking_config)
Example #7
0
 def test_single_event(self):
     chart_key = self.create_test_chart()
     events = self.client.events.create_multiple(chart_key, [EventProperties()])
     assert_that(events).has_size(1)
     event = events[0]
     assert_that(event.id).is_not_zero()
     assert_that(event.key).is_not_none()
     assert_that(event.chart_key).is_equal_to(chart_key)
     assert_that(event.table_booking_config).is_equal_to(TableBookingConfig.inherit())
     assert_that(event.supports_best_available).is_none()
     assert_that(event.for_sale_config).is_none()
     assert_that(event.created_on).is_between_now_minus_and_plus_minutes(datetime.utcnow(), 1)
     assert_that(event.updated_on).is_none()
Example #8
0
    def test_chart_key_is_required(self):
        chart_key = self.create_test_chart()
        event = self.client.events.create(chart_key)

        assert_that(event.id).is_not_zero()
        assert_that(event.key).is_not_none()
        assert_that(event.chart_key).is_equal_to(chart_key)
        assert_that(event.table_booking_config).is_equal_to(
            TableBookingConfig.inherit())
        assert_that(event.supports_best_available).is_true()
        assert_that(event.for_sale_config).is_none()
        assert_that(event.created_on).is_between_now_minus_and_plus_minutes(
            datetime.utcnow(), 1)
        assert_that(event.updated_on).is_none()
Example #9
0
    def test_chart_key_is_required(self):
        chart_key = self.create_test_chart()

        season = self.client.seasons.create(chart_key)

        assert_that(season.id).is_not_zero()
        assert_that(season.key).is_not_none()
        assert_that(season.is_top_level_season).is_true()
        assert_that(season.top_level_season_key).is_none()
        assert_that(season.partial_season_keys).is_empty()
        assert_that(season.events).is_empty()
        assert_that(season.chart_key).is_equal_to(chart_key)
        assert_that(season.table_booking_config).is_equal_to(TableBookingConfig.inherit())
        assert_that(season.supports_best_available).is_true()
        assert_that(season.for_sale_config).is_none()
        assert_that(season.created_on).is_between_now_minus_and_plus_minutes(datetime.utcnow(), 1)
        assert_that(season.updated_on).is_none()
Example #10
0
    def test(self):
        chart_key = self.create_test_chart()
        event = self.client.events.create(chart_key)

        retrieved_event = self.client.events.retrieve(event.key)

        assert_that(retrieved_event.id).is_not_zero()
        assert_that(retrieved_event.key).is_not_none()
        assert_that(retrieved_event.is_event_in_season).is_false()
        assert_that(retrieved_event.chart_key).is_equal_to(chart_key)
        assert_that(retrieved_event.table_booking_config).is_equal_to(
            TableBookingConfig.inherit())
        assert_that(retrieved_event.supports_best_available).is_true()
        assert_that(retrieved_event.for_sale_config).is_none()
        assert_that(
            retrieved_event.created_on).is_between_now_minus_and_plus_minutes(
                datetime.utcnow(), 1)
        assert_that(retrieved_event.updated_on).is_none()
        assert_that(retrieved_event.categories).has_size(3)