public void Scoped_data_store_services_can_be_obtained_from_configuration_with_implicit_service_provider() { DataStore store; DataStoreCreator creator; DataStoreConnection connection; using (var context = new GiddyupContext()) { var contextServices = ((IDbContextServices)context).ScopedServiceProvider; store = contextServices.GetRequiredService <DbContextService <DataStore> >().Service; creator = contextServices.GetRequiredService <DbContextService <DataStoreCreator> >().Service; connection = contextServices.GetRequiredService <DbContextService <DataStoreConnection> >().Service; Assert.Same(store, contextServices.GetRequiredService <DbContextService <DataStore> >().Service); Assert.Same(creator, contextServices.GetRequiredService <DbContextService <DataStoreCreator> >().Service); Assert.Same(connection, contextServices.GetRequiredService <DbContextService <DataStoreConnection> >().Service); } using (var context = new GiddyupContext()) { var contextServices = ((IDbContextServices)context).ScopedServiceProvider; Assert.NotSame(store, contextServices.GetRequiredService <DbContextService <DataStore> >().Service); Assert.NotSame(creator, contextServices.GetRequiredService <DbContextService <DataStoreCreator> >().Service); Assert.NotSame(connection, contextServices.GetRequiredService <DbContextService <DataStoreConnection> >().Service); } }
public void Scoped_data_store_services_can_be_obtained_from_configuration_with_implicit_service_provider() { IDataStore store; IDataStoreCreator creator; IDataStoreConnection connection; using (var context = new GiddyupContext()) { var contextServices = ((IAccessor<IServiceProvider>)context).Service; store = contextServices.GetRequiredService<IDataStore>(); creator = contextServices.GetRequiredService<IDataStoreCreator>(); connection = contextServices.GetRequiredService<IDataStoreConnection>(); Assert.Same(store, contextServices.GetRequiredService<IDataStore>()); Assert.Same(creator, contextServices.GetRequiredService<IDataStoreCreator>()); Assert.Same(connection, contextServices.GetRequiredService<IDataStoreConnection>()); } using (var context = new GiddyupContext()) { var contextServices = ((IAccessor<IServiceProvider>)context).Service; Assert.NotSame(store, contextServices.GetRequiredService<IDataStore>()); Assert.NotSame(creator, contextServices.GetRequiredService<IDataStoreCreator>()); Assert.NotSame(connection, contextServices.GetRequiredService<IDataStoreConnection>()); } }
public void Scoped_provider_services_can_be_obtained_from_configuration_with_implicit_service_provider() { IDatabase database; IDatabaseCreator creator; using (var context = new GiddyupContext()) { database = context.GetService <IDatabase>(); creator = context.GetService <IDatabaseCreator>(); Assert.Same(database, context.GetService <IDatabase>()); Assert.Same(creator, context.GetService <IDatabaseCreator>()); } using (var context = new GiddyupContext()) { Assert.NotSame(database, context.GetService <IDatabase>()); Assert.NotSame(creator, context.GetService <IDatabaseCreator>()); } }
public void Scoped_provider_services_can_be_obtained_from_configuration_with_implicit_service_provider() { IDatabase database; IDatabaseCreator creator; using (var context = new GiddyupContext()) { database = context.GetService<IDatabase>(); creator = context.GetService<IDatabaseCreator>(); Assert.Same(database, context.GetService<IDatabase>()); Assert.Same(creator, context.GetService<IDatabaseCreator>()); } using (var context = new GiddyupContext()) { Assert.NotSame(database, context.GetService<IDatabase>()); Assert.NotSame(creator, context.GetService<IDatabaseCreator>()); } }
public void Scoped_provider_services_can_be_obtained_from_configuration() { var serviceProvider = InMemoryTestHelpers.Instance.CreateServiceProvider(); IDatabase database; IDatabaseCreator creator; using (var context = new GiddyupContext(serviceProvider)) { database = context.GetService <IDatabase>(); creator = context.GetService <IDatabaseCreator>(); Assert.Same(database, context.GetService <IDatabase>()); Assert.Same(creator, context.GetService <IDatabaseCreator>()); } using (var context = new GiddyupContext(serviceProvider)) { Assert.NotSame(database, context.GetService <IDatabase>()); Assert.NotSame(creator, context.GetService <IDatabaseCreator>()); } }
public void Scoped_provider_services_can_be_obtained_from_configuration() { var serviceProvider = TestHelpers.Instance.CreateServiceProvider(); IDatabase database; IDatabaseCreator creator; using (var context = new GiddyupContext(serviceProvider)) { database = context.GetService<IDatabase>(); creator = context.GetService<IDatabaseCreator>(); Assert.Same(database, context.GetService<IDatabase>()); Assert.Same(creator, context.GetService<IDatabaseCreator>()); } using (var context = new GiddyupContext(serviceProvider)) { Assert.NotSame(database, context.GetService<IDatabase>()); Assert.NotSame(creator, context.GetService<IDatabaseCreator>()); } }
public void Scoped_data_store_services_can_be_obtained_from_configuration_with_implicit_service_provider() { DataStore store; DataStoreCreator creator; DataStoreConnection connection; using (var context = new GiddyupContext()) { store = context.Configuration.DataStore; creator = context.Configuration.DataStoreCreator; connection = context.Configuration.Connection; Assert.Same(store, context.Configuration.DataStore); Assert.Same(creator, context.Configuration.DataStoreCreator); Assert.Same(connection, context.Configuration.Connection); } using (var context = new GiddyupContext()) { Assert.NotSame(store, context.Configuration.DataStore); Assert.NotSame(creator, context.Configuration.DataStoreCreator); Assert.NotSame(connection, context.Configuration.Connection); } }