public BaseTest() { if (Database == null) { var connectionString = "Host=127.0.0.1;Database=observatory;Username=postgres;Password=password"; string environmentConnectionString = Environment.GetEnvironmentVariable("SECUREGOV_TEST_DATABASE"); string hostName = Environment.GetEnvironmentVariable("SECUREGOV_TEST_DATABASE_HOSTNAME"); if (!string.IsNullOrEmpty(environmentConnectionString)) { connectionString = environmentConnectionString; } else if (!string.IsNullOrEmpty(hostName)) { string database = Environment.GetEnvironmentVariable("SECUREGOV_TEST_DATABASE_NAME"); string username = Environment.GetEnvironmentVariable("SECUREGOV_TEST_DATABASE_USERNAME"); string password = Environment.GetEnvironmentVariable("SECUREGOV_TEST_DATABASE_PASSWORD"); connectionString = $"Host={hostName};Database={database};Username={username};Password={password}"; } Database = new ObservatoryContext() { Settings = new Settings() { ConnectionString = connectionString } }; } }
public void Dispose() { if (Database == null) { Database = new ObservatoryContext(); } while (_commands.Count > 0) { ICommand command = _commands.Dequeue(); if (command is EntityCommand <Websites> website) { CommandHandler <Websites> .Handle(Database.Websites, website); } else if (command is EntityCommand <Scans> scan) { CommandHandler <Scans> .Handle(Database.Scans, scan); } else if (command is EntityCommand <Analysis> analysis) { CommandHandler <Analysis> .Handle(Database.Analysis, analysis); } else if (command is EntityCommand <Certificates> certificate) { CommandHandler <Certificates> .Handle(Database.Certificates, certificate); } else if (command is EntityCommand <Trust> trust) { CommandHandler <Trust> .Handle(Database.Trust, trust); } else if (command is EntityCommand <WebsiteCategories> websiteCategory) { CommandHandler <WebsiteCategories> .Handle(Database.WebsiteCategories, websiteCategory); } else { throw new NotImplementedException(); } } Database.SaveChanges(); _commands.Clear(); }
public DatabaseFactory(ObservatoryContext context) { _database = new Lazy <ObservatoryContext>(() => { return(context); }); }
public UnitOfWork(ObservatoryContext observatoryContext) { Database = observatoryContext; }