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())
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"}) )
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")
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)
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)
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)
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()
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()
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()
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)