diff --git a/src/Identity/test/Identity.FunctionalTests/Infrastructure/FunctionalTestsServiceCollectionExtensions.cs b/src/Identity/test/Identity.FunctionalTests/Infrastructure/FunctionalTestsServiceCollectionExtensions.cs index 1845eb973b39..0724de91a202 100644 --- a/src/Identity/test/Identity.FunctionalTests/Infrastructure/FunctionalTestsServiceCollectionExtensions.cs +++ b/src/Identity/test/Identity.FunctionalTests/Infrastructure/FunctionalTestsServiceCollectionExtensions.cs @@ -17,38 +17,11 @@ namespace Microsoft.AspNetCore.Identity.FunctionalTests; public static class FunctionalTestsServiceCollectionExtensions { - public static IServiceCollection SetupTestDatabase(this IServiceCollection services, DbConnection connection) where TContext : DbContext - { - var descriptor = services.SingleOrDefault(d => d.ServiceType == typeof(DbContextOptions)); - if (descriptor != null) - { - services.Remove(descriptor); - } - - services.AddScoped(p => - DbContextOptionsFactory( - p, - (sp, options) => options + public static IServiceCollection SetupTestDatabase(this IServiceCollection services, DbConnection connection) where TContext : DbContext => + services.ConfigureDbContext((sp, options) => options .ConfigureWarnings(b => b.Log(CoreEventId.ManyServiceProvidersCreatedWarning)) - .UseSqlite(connection))); - - return services; - } - - private static DbContextOptions DbContextOptionsFactory( - IServiceProvider applicationServiceProvider, - Action optionsAction) - where TContext : DbContext - { - var builder = new DbContextOptionsBuilder( - new DbContextOptions(new Dictionary())); - - builder.UseApplicationServiceProvider(applicationServiceProvider); - - optionsAction?.Invoke(applicationServiceProvider, builder); - - return builder.Options; - } + .UseSqlite(connection), + ServiceLifetime.Scoped); public static IServiceCollection SetupTestThirdPartyLogin(this IServiceCollection services) => services.AddAuthentication()