public override UpdatesContext CreateContext(SqlServerTestStore testStore)
        {
            var optionsBuilder = new DbContextOptionsBuilder()
                                 .UseSqlServer(testStore.Connection, b => b.ApplyConfiguration())
                                 .UseInternalServiceProvider(_serviceProvider);

            var context = new UpdatesContext(optionsBuilder.Options);

            context.Database.UseTransaction(testStore.Transaction);
            return(context);
        }
        public override NpgsqlTestStore CreateTestStore()
        => NpgsqlTestStore.GetOrCreateShared(DatabaseName, () =>
        {
            var optionsBuilder = new DbContextOptionsBuilder()
                                 .UseNpgsql(NpgsqlTestStore.CreateConnectionString(DatabaseName), b => b.ApplyConfiguration())
                                 .UseInternalServiceProvider(_serviceProvider);

            using (var context = new UpdatesContext(optionsBuilder.Options))
            {
                context.Database.EnsureCreated();
                UpdatesModelInitializer.Seed(context);
            }
        });
        public override UpdatesContext CreateContext(SqliteTestStore testStore)
        {
            var context = new UpdatesContext(new DbContextOptionsBuilder()
                                             .UseSqlite(testStore.Connection,
                                                        b => b.SuppressForeignKeyEnforcement())
                                             .UseInternalServiceProvider(_serviceProvider).Options);

            context.ChangeTracker.QueryTrackingBehavior = QueryTrackingBehavior.NoTracking;

            context.Database.UseTransaction(testStore.Transaction);

            return(context);
        }
Esempio n. 4
0
 public override SqliteTestStore CreateTestStore() =>
 SqliteTestStore.GetOrCreateShared(
     DatabaseName,
     () =>
 {
     using (var context = new UpdatesContext(new DbContextOptionsBuilder()
                                             .UseSqlite(_connectionString)
                                             .UseInternalServiceProvider(_serviceProvider).Options))
     {
         context.Database.EnsureClean();
         UpdatesModelInitializer.Seed(context);
     }
 });
Esempio n. 5
0
        public override SqlServerTestStore CreateTestStore()
        {
            return(SqlServerTestStore.GetOrCreateShared(DatabaseName, () =>
            {
                var optionsBuilder = new DbContextOptionsBuilder()
                                     .UseSqlServer(SqlServerTestStore.CreateConnectionString(DatabaseName))
                                     .UseInternalServiceProvider(_serviceProvider);

                using (var context = new UpdatesContext(optionsBuilder.Options))
                {
                    context.Database.EnsureClean();
                    UpdatesModelInitializer.Seed(context);
                }
            }));
        }
        public override SqliteTestStore CreateTestStore() =>
        SqliteTestStore.GetOrCreateShared(
            DatabaseName,
            () =>
        {
            using (var context = new UpdatesContext(new DbContextOptionsBuilder()
                                                    .UseSqlite(_connectionString)
                                                    .UseInternalServiceProvider(_serviceProvider).Options))
            {
                // TODO: Delete DB if model changed
                context.Database.EnsureDeleted();
                if (context.Database.EnsureCreated())
                {
                    UpdatesModelInitializer.Seed(context);
                }

                TestSqlLoggerFactory.Reset();
            }
        });
Esempio n. 7
0
 public UpdateController(UpdatesContext dbContext, ILogger <UpdateController> logger = null)
 {
     DbContext = dbContext;
     _logger   = logger;
 }
Esempio n. 8
0
 public HistoryController(UpdatesContext dbContext, ILogger <HistoryController> logger = null)
 {
     DbContext = dbContext;
     _logger   = logger;
 }