def test_remote_event_no_event(self): registry = Registry(self.app) event = registry.remote_event('app', 'event') expected_event = Event.remote_instance('app', 'event') self.assertEqual(expected_event, event) self.assertIs(self.app, event.app) self.assertTrue(event.is_remote)
def test_create_local_event_already_created(self): registry = Registry(self.app) registry.create_local_event('app', 'event') event = registry.create_local_event('app', 'event') self.assertEqual([], event.kwarg_keys) self.assertEqual([event], registry.events) self.assertFalse(event.is_remote)
def test_remote_event(self): registry = Registry(self.app) existing_event = Event.remote_instance('app', 'event') registry.events.append(existing_event) event = registry.remote_event('app', 'event') self.assertEqual(existing_event, event) self.assertTrue(event.is_remote)
def test_local_event_no_event(self): registry = Registry(self.app) try: event = registry.local_event('app', 'event') self.fail() except RuntimeError: pass
def test_event_no_event_raise_does_not_exist(self): registry = Registry(self.app) try: registry.event('app', 'event', raise_does_not_exist=True) self.fail() except RuntimeError: pass
def test_remote_events(self): registry = Registry(self.app) local_event = Event.local_instance('app local', 'event') remote_event = Event.remote_instance('app remote', 'event') registry.events.append(local_event) registry.events.append(remote_event) self.assertEqual([remote_event], registry.remote_events)
def test_event_remote_only(self): registry = Registry(self.app) local_event = Event.local_instance('app local', 'event') remote_event = Event.remote_instance('app remote', 'event') registry.events.append(local_event) registry.events.append(remote_event) event = registry.event('app local', 'event', remote_only=True) self.assertIsNone(event)
def test_local_event_only_remote_event(self): registry = Registry(self.app) existing_event = Event.remote_instance('app', 'event') registry.events.append(existing_event) try: event = registry.local_event('app', 'event') self.fail() except RuntimeError: pass
def test_create_local_event(self): registry = Registry(self.app) event = registry.create_local_event('app', 'event', kwarg_keys=['a', 'b']) self.assertEqual(['a', 'b'], event.kwarg_keys) self.assertIs(self.app, event.app) self.assertEqual([event], registry.events) self.assertFalse(event.is_remote)
def setUp(self): self.app = App() self.registry = Registry(self.app) self.namespaces = ['app_1', 'app_2'] self.local_events_from_backend = [] self.remote_events_from_backend = [] self.deleted_events = [] self.created_events = [] self.created_tasks = [] self.removed_tasks = [] self.updated_tasks = [] test_case = self class TestBackend(Backend): def get_local_namespaces(self): return test_case.namespaces def get_task_namespace(self, task): return task.name.split('.')[0] def fetch_events_for_namespaces(self, app_names): return test_case.local_events_from_backend def fetch_events(self, events): return [ event for event in test_case.local_events_from_backend + test_case.remote_events_from_backend if event in events ] def should_update_event(self, event): return True def delete_events(self, events): for event in events: test_case.deleted_events.append(event) def create_events(self, events): for event in events: test_case.created_events.append(event) def create_tasks(self, event, tasks): for task in tasks: test_case.created_tasks.append((event, task)) def remove_tasks(self, event, tasks): for task in tasks: test_case.removed_tasks.append((event, task)) def update_tasks(self, event, tasks): for task in tasks: test_case.updated_tasks.append((event, task)) self.backend_cls = TestBackend
def test_event_no_event(self): registry = Registry(self.app) event = registry.event('app', 'event') self.assertIsNone(event)
def test_event(self): registry = Registry(self.app) existing_event = Event('app', 'event') registry.events.append(existing_event) event = registry.event('app', 'event') self.assertEqual(existing_event, event)