using System; using Microsoft.Extensions.DependencyInjection; using OpenIddict.Models; using Xunit; namespace OpenIddict.Core.Tests { public class OpenIddictExtensionsTests { [Theory] [InlineData(typeof(OpenIddictApplicationManager))] [InlineData(typeof(OpenIddictAuthorizationManager))] [InlineData(typeof(OpenIddictScopeManager))] [InlineData(typeof(OpenIddictTokenManager))] public void AddOpenIddict_KeyTypeDefaultsToString(Type type) { // Arrange var services = new ServiceCollection(); // Act services.AddOpenIddict(); // Assert Assert.Contains(services, service => service.ImplementationType == type); } [Theory] [InlineData(typeof(OpenIddictApplicationManager>>))] [InlineData(typeof(OpenIddictAuthorizationManager>>))] [InlineData(typeof(OpenIddictScopeManager>))] [InlineData(typeof(OpenIddictTokenManager>))] public void AddOpenIddict_KeyTypeCanBeOverriden(Type type) { // Arrange var services = new ServiceCollection(); // Act services.AddOpenIddict(); // Assert Assert.Contains(services, service => service.ImplementationType == type); } [Theory] [InlineData(typeof(OpenIddictApplicationManager))] [InlineData(typeof(OpenIddictAuthorizationManager))] [InlineData(typeof(OpenIddictScopeManager))] [InlineData(typeof(OpenIddictTokenManager))] public void AddOpenIddict_DefaultEntitiesCanBeReplaced(Type type) { // Arrange var services = new ServiceCollection(); // Act services.AddOpenIddict(); // Assert Assert.Contains(services, service => service.ServiceType == type); } } }