public MockWebApplicationFactory() { var connectionString = $"DataSource=file:DB{Guid.NewGuid()}?mode=memory&cache=shared"; _connection = new SqliteConnection(connectionString); _connection.Open(); // connection should stay open to keep SQLite in-memory database alive _connection.CreateFunction("comparedates", (Func <DateTimeOffset?, DateTimeOffset?, int>)CompareDates); CreateDatabaseContext(); Generator = new DatabaseTestDataGenerator(DatabaseContext); OutgoingRestClient = new Mock <IRestClient>(); PayrunsQueue = new Mock <IQueueService>(); RestClient = new TestRestClient(CreateClient()) { // HACK: for some reason updates to existing entities done by API // aren't visible to database context in test (but new entities // created by API still visible to test context, as well as entities created by test // are visible to API). So, context is recreated to read updated entities in test db context AfterRequest = CreateDatabaseContext }; }
protected BaseInMemoryDatabaseTest() { Context = CreateDatabaseContext(); Generator = new DatabaseTestDataGenerator(Context); Context.Database.EnsureCreated(); }
public CarePackageBrokerageControllerE2ETests(MockWebApplicationFactory fixture) { _fixture = fixture; _generator = _fixture.Generator; }
public PayRunsControllerE2ETests(MockWebApplicationFactory fixture) { _fixture = fixture; _generator = _fixture.Generator; }
public CarePackageReclaimGatewayTests() { _gateway = new CarePackageReclaimGateway(Context); _generator = new DatabaseTestDataGenerator(Context); }