def setup_di(reset_di): # noqa injector.register_as_singleton(ConnectionHandler, FakeConnectionHandler) injector.register_as_singleton(ReadDatabase, MagicMock) injector.register(Database, SqlDatabaseBackendService) injector.register_as_singleton(OccLocker, MagicMock) injector.register_as_singleton(Messaging, MagicMock) core_setup_di()
def setup_di(): from shared.di import injector from .connection_handler import ConnectionHandler from .redis_connection_handler import RedisConnectionHandlerService injector.register(ConnectionHandler, RedisConnectionHandlerService)
def provide_di(reset_di): # noqa injector.register_as_singleton(Database, MagicMock) injector.register_as_singleton(OccLocker, lambda: MagicMock(unsafe=True)) injector.register_as_singleton(EventTranslator, MagicMock) injector.register_as_singleton(EventExecutor, MagicMock) injector.register_as_singleton(Messaging, MagicMock) injector.register(Writer, WriterService) yield
def test_client_factory_service_singleton_multi_get(self): injector.register(MasterService, MasterServiceSingleton) injector.register(ClientService, ClientServiceFactory) a = injector.get(ClientService) b = injector.get(ClientService) assert a != b assert a.master_service == b.master_service
def test_master_factory(self): injector.register(MasterServiceFactory, MasterServiceFactory) injector.register(ClientService, ClientServiceFactoryDirectFactory) a = injector.get(ClientService) b = injector.get(ClientService) assert a != b assert a.master_service != b.master_service
def test_master_singleton(self): injector.register(MasterServiceSingleton, MasterServiceSingleton) injector.register(ClientService, ClientServiceFactoryDirectSingleton) a = injector.get(ClientService) b = injector.get(ClientService) assert a != b assert a.master_service == b.master_service
def test_singleton_and_factory(self): for client_service, master_service in ( (ClientServiceFactory, MasterServiceFactory), (ClientServiceFactory, MasterServiceSingleton), (ClientServiceSingleton, MasterServiceSingleton), ): injector.register(MasterService, master_service) injector.register(ClientService, client_service) cs = injector.get(ClientService) assert type(cs) == client_service assert type(cs.master_service) == master_service assert cs.value == "default" assert cs.another_value == "default2" assert cs.init_master_service == cs.master_service
def register_services(): util_setup_di() postgresql_setup_di() redis_setup_di() injector.register(ReadDatabase, SqlReadDatabaseBackendService) injector.register(Database, SqlDatabaseBackendService) injector.register(OccLocker, SqlOccLockerBackendService) injector.register(Messaging, RedisMessagingBackendService) core_setup_di()
def setup_di(reset_di): # noqa util_setup_di() postgresql_setup_di() redis_setup_di() injector.register(Database, SqlDatabaseBackendService) injector.register(OccLocker, SqlOccLockerBackendService) injector.register(Messaging, RedisMessagingBackendService) core_setup_di()
def setup_di(): from shared.di import injector from .writer_service import WriterService from .event_executor import EventExecutor, EventExecutorService from .event_translator import EventTranslator, EventTranslatorService injector.register(EventTranslator, EventTranslatorService) injector.register(EventExecutor, EventExecutorService) injector.register(Writer, WriterService)
def setup_di(): from shared.di import injector from shared.services import ReadDatabase from .pg_connection_handler import PgConnectionHandlerService from .sql_read_database_backend_service import SqlReadDatabaseBackendService injector.register(ConnectionHandler, PgConnectionHandlerService) injector.register(SqlQueryHelper, SqlQueryHelper) injector.register(ReadDatabase, SqlReadDatabaseBackendService)
def provide_di(reset_di): # noqa injector.register_as_singleton(ConnectionHandler, MagicMock) injector.register(OccLocker, SqlOccLockerBackendService) yield
def provide_di(reset_di): # noqa injector.register_as_singleton(ConnectionHandler, MagicMock) injector.register(SqlQueryHelper, SqlQueryHelper) injector.register(ReadDatabase, SqlReadDatabaseBackendService) yield
def setup_di(): from shared.di import injector from .reader_service import ReaderService injector.register(Reader, ReaderService)
def event_translator(reset_di): # noqa injector.register_as_singleton(ReadDatabase, MagicMock) injector.register(EventTranslator, EventTranslatorService) yield injector.get(EventTranslator)
def provide_di(reset_di): # noqa injector.register_as_singleton(ReadDatabase, MagicMock) injector.register(EventExecutor, EventExecutorService) yield
def provide_di(reset_di): # noqa injector.register(ShutdownService, ShutdownService) injector.register(EnvironmentService, EnvironmentService) injector.register(ConnectionHandler, RedisConnectionHandlerService) yield
def event_translator(reset_di): # noqa injector.register(EventTranslator, EventTranslatorService) yield injector.get(EventTranslator)
def environment_service(reset_di): # noqa injector.register(EnvironmentService, EnvironmentService) yield injector.get(EnvironmentService)
def test_master_factory(self): injector.register(MasterServiceFactory, MasterServiceFactory) with pytest.raises(DependencyInjectionError): injector.register(ClientService, ClientServiceSingletonDirectFactory)
def provide_di(reset_di): # noqa injector.register_as_singleton(ConnectionHandler, MagicMock) injector.register_as_singleton(ReadDatabase, MagicMock) injector.register(Reader, ReaderService) yield
def shutdown_service(reset_di): # noqa injector.register(ShutdownService, ShutdownService) yield injector.get(ShutdownService)
def provide_di(reset_di): # noqa injector.register(SqlQueryHelper, SqlQueryHelper) yield
def setup_di(): from shared.di import injector injector.register(EnvironmentService, EnvironmentService) injector.register(ShutdownService, ShutdownService)
def test_client_singleton_service_factory(self): injector.register(MasterService, MasterServiceFactory) with pytest.raises(DependencyInjectionError): injector.register(ClientService, ClientServiceSingleton)