public DependencySetupFixture() { var serviceCollection = new ServiceCollection(); serviceCollection.AddDbContext <BankIssuerDbContext>(options => options.UseInMemoryDatabase("BankIssuer")); var options = new DbContextOptionsBuilder <BankIssuerDbContext>() .UseInMemoryDatabase(databaseName: "BankIssuer") .Options; using var context = new BankIssuerDbContext(options); context.Database.EnsureCreated(); SeedDb.Initialize(context); serviceCollection.AddScoped(typeof(IRepository <>), typeof(Repository <>)); serviceCollection.AddTransient <Master>(); serviceCollection.AddTransient <Visa>(); serviceCollection.AddTransient <Func <Origin, ICalculator> >(serviceProvider => key => { return(key switch { Origin.MASTER => serviceProvider.GetService <Master>(), Origin.VISA => serviceProvider.GetService <Visa>(), _ => throw new KeyNotFoundException() }); });
public AccountAPITest() { var options = new DbContextOptionsBuilder <BankIssuerDbContext>() .UseInMemoryDatabase(databaseName: "BankIssuer") .Options; using var context = new BankIssuerDbContext(options); context.Database.EnsureCreated(); SeedDb.Initialize(context); }
public Repository(BankIssuerDbContext context) { _context = context; }