public void SQL_Server_and_SQL_compact_generators_are_registered_by_default() { var resolver = new MigrationsConfigurationResolver(); Assert.IsType<SqlServerMigrationSqlGenerator>(resolver.GetService<MigrationSqlGenerator>("System.Data.SqlClient")); Assert.IsType<SqlCeMigrationSqlGenerator>(resolver.GetService<MigrationSqlGenerator>("System.Data.SqlServerCe.4.0")); }
public RootDependencyResolver( MigrationsConfigurationResolver migrationsConfigurationResolver, DefaultProviderServicesResolver defaultProviderServicesResolver) { _migrationsConfigurationResolver = migrationsConfigurationResolver; _resolvers.Add(_migrationsConfigurationResolver); _resolvers.Add(new CachingDependencyResolver(defaultProviderServicesResolver)); _resolvers.Add(new SingletonDependencyResolver<IDbConnectionFactory>(new SqlConnectionFactory())); _resolvers.Add(new SingletonDependencyResolver<IDbModelCacheKeyFactory>(new DefaultModelCacheKeyFactory())); }
public void A_new_instance_is_returned_each_time_GetService_is_called() { var resolver = new MigrationsConfigurationResolver(); Assert.NotSame( resolver.GetService<MigrationSqlGenerator>("System.Data.SqlClient"), resolver.GetService<MigrationSqlGenerator>("System.Data.SqlClient")); Assert.NotSame( resolver.GetService<MigrationSqlGenerator>("System.Data.SqlServerCe.4.0"), resolver.GetService<MigrationSqlGenerator>("System.Data.SqlServerCe.4.0")); }
public void GetService_can_be_accessed_from_multiple_threads_concurrently() { for (var i = 0; i < 30; i++) { var bag = new ConcurrentBag<MigrationSqlGenerator>(); var resolver = new MigrationsConfigurationResolver(); ExecuteInParallel(() => bag.Add(resolver.GetService<MigrationSqlGenerator>("System.Data.SqlClient"))); Assert.Equal(20, bag.Count); foreach (var generator in bag) { Assert.IsType<SqlServerMigrationSqlGenerator>(generator); Assert.Equal(19, bag.Count(c => generator != c)); } } }
public RootDependencyResolver( MigrationsConfigurationResolver migrationsConfigurationResolver, DefaultProviderServicesResolver defaultProviderServicesResolver, DatabaseInitializerResolver databaseInitializerResolver) { Contract.Requires(migrationsConfigurationResolver != null); Contract.Requires(defaultProviderServicesResolver != null); Contract.Requires(databaseInitializerResolver != null); _databaseInitializerResolver = databaseInitializerResolver; _resolvers.Add(_databaseInitializerResolver); _resolvers.Add(migrationsConfigurationResolver); _resolvers.Add(new CachingDependencyResolver(defaultProviderServicesResolver)); _resolvers.Add(new SingletonDependencyResolver<IDbConnectionFactory>(new SqlConnectionFactory())); _resolvers.Add(new SingletonDependencyResolver<IDbModelCacheKeyFactory>(new DefaultModelCacheKeyFactory())); }