Пример #1
0
        public void Configure_ThrowsAnExceptionForNullOptions()
        {
            // Arrange
            var configuration = new OpenIddictValidationConfiguration(Mock.Of <IDataProtectionProvider>());

            // Act and assert
            var exception = Assert.Throws <ArgumentNullException>(() => configuration.Configure(null));

            Assert.Equal("options", exception.ParamName);
        }
Пример #2
0
        public void Configure_ThrowsAnExceptionWhenSchemeIsAlreadyRegisteredWithDifferentHandlerType()
        {
            // Arrange
            var options = new AuthenticationOptions();

            options.AddScheme(OpenIddictValidationDefaults.AuthenticationScheme, builder =>
            {
                builder.HandlerType = typeof(OAuthValidationHandler);
            });

            var initializer = new OpenIddictValidationConfiguration(Mock.Of <IDataProtectionProvider>());

            // Act and assert
            var exception = Assert.Throws <InvalidOperationException>(() => initializer.Configure(options));

            Assert.Equal(new StringBuilder()
                         .AppendLine("The OpenIddict validation handler cannot be registered as an authentication scheme.")
                         .AppendLine("This may indicate that an instance of the OAuth validation or JWT bearer handler was registered.")
                         .Append("Make sure that neither 'services.AddAuthentication().AddOAuthValidation()' nor ")
                         .Append("'services.AddAuthentication().AddJwtBearer()' are called from 'ConfigureServices'.")
                         .ToString(), exception.Message);
        }