private static void CreateTestStore <TContext>( string databaseName, IServiceProvider serviceProvider, Func <IServiceProvider, DbContextOptions, TContext> contextCreator, Action <TContext> contextInitializer) where TContext : DbContext, IDisposable { var connectionString = SqlServerTestStore.CreateConnectionString(databaseName); SqlServerTestStore.GetOrCreateShared(databaseName, () => { var optionsBuilder = new DbContextOptionsBuilder(); optionsBuilder.UseSqlServer(connectionString); using (var context = contextCreator(serviceProvider, optionsBuilder.Options)) { if (context.Database.EnsureCreated()) { contextInitializer(context); } TestSqlLoggerFactory.SqlStatements.Clear(); } }); }
public virtual void CreateDatabase() { SqlServerTestStore.GetOrCreateShared(DatabaseName, () => { using (var context = new ChipsContext(ServiceProvider)) { context.Database.EnsureDeleted(); context.Database.EnsureCreated(); } }); }
public override SqlServerTestStore CreateTestStore() { return(SqlServerTestStore.GetOrCreateShared(DatabaseName, () => { var optionsBuilder = new DbContextOptionsBuilder(); optionsBuilder.UseSqlServer(SqlServerTestStore.CreateConnectionString(DatabaseName)); using (var context = new StoreGeneratedContext(_serviceProvider, optionsBuilder.Options)) { context.Database.EnsureDeleted(); context.Database.EnsureCreated(); } })); }
public override SqlServerTestStore CreateTestStore() { return(SqlServerTestStore.GetOrCreateShared(DatabaseName, () => { var optionsBuilder = new EntityOptionsBuilder(); optionsBuilder.UseSqlServer(SqlServerTestStore.CreateConnectionString(DatabaseName)); using (var context = new GraphUpdatesContext(_serviceProvider, optionsBuilder.Options)) { context.Database.EnsureDeleted(); if (context.Database.EnsureCreated()) { Seed(context); } } })); }