using Diligent.WebAPI.Data; using Diligent.WebAPI.Data.Entities; using Microsoft.EntityFrameworkCore; namespace Diligent.WebAPI.Tests { public static class Helpers where T : class { public static async Task GetDatabaseContext(List applicants) { var options = new DbContextOptionsBuilder() .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()) .Options; var databaseContext = new DatabaseContext(options); databaseContext.Database.EnsureCreated(); if (!await databaseContext.Set().AnyAsync()) { await databaseContext.Set().AddRangeAsync(applicants); await databaseContext.SaveChangesAsync(); } return databaseContext; } public static async Task GetDatabaseContextWithRelation(List users, List tokens) { var options = new DbContextOptionsBuilder() .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()) .Options; var databaseContext = new DatabaseContext(options); databaseContext.Database.EnsureCreated(); if (!await databaseContext.Set().AnyAsync() || !await databaseContext.Set().AnyAsync()) { await databaseContext.Set().AddRangeAsync(users); await databaseContext.Set().AddRangeAsync(tokens); await databaseContext.SaveChangesAsync(); } return databaseContext; } } }