def setUp(self): super().setUp() self.resource_name = 'subscribers' with self.app.app_context(): self.service = SubscribersService(self.resource_name, backend=superdesk.get_backend()) self.min_seq_number = 0 self.max_seq_number = 10
class SequencesTestCase(TestCase): def setUp(self): super().setUp() self.resource_name = 'subscribers' with self.app.app_context(): self.service = SubscribersService(self.resource_name, backend=superdesk.get_backend()) self.min_seq_number = 0 self.max_seq_number = 10 def test_next_sequence_number(self): with self.app.app_context(): subscriber_id = self.service.create({}) sequence_number1 = get_next_sequence_number( resource_name=self.resource_name, item_id=subscriber_id, max_seq_number=self.max_seq_number, min_seq_number=self.min_seq_number ) sequence_number2 = get_next_sequence_number( resource_name=self.resource_name, item_id=subscriber_id, max_seq_number=self.max_seq_number, min_seq_number=self.min_seq_number ) self.assertEqual(sequence_number1 + 1, sequence_number2) def test_rotate_sequence_number(self): with self.app.app_context(): subscriber_id = self.service.create({}) for i in range(self.max_seq_number + 1): last_sequence_number = get_next_sequence_number( resource_name=self.resource_name, item_id=subscriber_id, max_seq_number=self.max_seq_number, min_seq_number=self.min_seq_number ) self.assertEqual(last_sequence_number, self.max_seq_number) last_sequence_number = get_next_sequence_number( resource_name=self.resource_name, item_id=subscriber_id, max_seq_number=self.max_seq_number, min_seq_number=self.min_seq_number ) self.assertEqual(last_sequence_number, self.min_seq_number)
def init_app(app): endpoint_name = 'subscribers' service = SubscribersService(endpoint_name, backend=get_backend()) SubscribersResource(endpoint_name, app=app, service=service) endpoint_name = 'publish_queue' service = PublishQueueService(endpoint_name, backend=get_backend()) PublishQueueResource(endpoint_name, app=app, service=service)
def init_app(app): # XXX: we need to do imports for transmitters and formatters here # so classes creation is done after PublishService is set # this is a temporary workaround until a proper plugin system # is implemented in Superdesk import superdesk.publish.transmitters # NOQA import superdesk.publish.formatters # NOQA endpoint_name = 'subscribers' service = SubscribersService(endpoint_name, backend=get_backend()) SubscribersResource(endpoint_name, app=app, service=service) endpoint_name = 'publish_queue' service = PublishQueueService(endpoint_name, backend=get_backend()) PublishQueueResource(endpoint_name, app=app, service=service)
def init_app(app): # XXX: we need to do imports for transmitters and formatters here # so classes creation is done after PublishService is set # this is a temporary workaround until a proper plugin system # is implemented in Superdesk import superdesk.publish.transmitters # NOQA import superdesk.publish.formatters # NOQA endpoint_name = "subscribers" service = SubscribersService(endpoint_name, backend=get_backend()) SubscribersResource(endpoint_name, app=app, service=service) endpoint_name = "publish_queue" service = PublishQueueService(endpoint_name, backend=get_backend()) PublishQueueResource(endpoint_name, app=app, service=service) superdesk.register_resource("subscriber_token", SubscriberTokenResource, SubscriberTokenService) app.client_config.update( { "transmitter_types": registered_transmitters_list, } )