public void UseMongoDb_RegistersMongoDbStoreResolvers(Type serviceType, Type implementationType) { // Arrange var services = new ServiceCollection(); var builder = new OpenIddictCoreBuilder(services); // Act builder.UseMongoDb(); // Assert Assert.Contains(services, service => service.ServiceType == serviceType && service.ImplementationType == implementationType); }
public void UseMongoDb_RegistersMongoDbContext() { // Arrange var services = new ServiceCollection(); var builder = new OpenIddictCoreBuilder(services); // Act builder.UseMongoDb(); // Assert Assert.Contains(services, service => service.Lifetime == ServiceLifetime.Singleton && service.ServiceType == typeof(IOpenIddictMongoDbContext) && service.ImplementationType == typeof(OpenIddictMongoDbContext)); }
/// <summary> /// Registers the MongoDB stores services in the DI container and /// configures OpenIddict to use the MongoDB entities by default. /// </summary> /// <param name="builder">The services builder used by OpenIddict to register new services.</param> /// <param name="configuration">The configuration delegate used to configure the MongoDB services.</param> /// <remarks>This extension can be safely called multiple times.</remarks> /// <returns>The <see cref="OpenIddictCoreBuilder"/>.</returns> public static OpenIddictCoreBuilder UseMongoDb( this OpenIddictCoreBuilder builder, Action <OpenIddictMongoDbBuilder> configuration) { if (builder is null) { throw new ArgumentNullException(nameof(builder)); } if (configuration is null) { throw new ArgumentNullException(nameof(configuration)); } configuration(builder.UseMongoDb()); return(builder); }
public void UseMongoDb_RegistersDefaultEntities() { // Arrange var services = new ServiceCollection().AddOptions(); var builder = new OpenIddictCoreBuilder(services); // Act builder.UseMongoDb(); // Assert var provider = services.BuildServiceProvider(); var options = provider.GetRequiredService <IOptionsMonitor <OpenIddictCoreOptions> >().CurrentValue; Assert.Equal(typeof(OpenIddictMongoDbApplication), options.DefaultApplicationType); Assert.Equal(typeof(OpenIddictMongoDbAuthorization), options.DefaultAuthorizationType); Assert.Equal(typeof(OpenIddictMongoDbScope), options.DefaultScopeType); Assert.Equal(typeof(OpenIddictMongoDbToken), options.DefaultTokenType); }