public async Task HandleAsync_ThrowsAnExceptionForNullNotification()
        {
            // Arrange
            var handler = new OpenIddictServerEventHandler <Event>(
                notification => Task.FromResult(OpenIddictServerEventState.Handled));

            // Act and assert
            var exception = await Assert.ThrowsAsync <ArgumentNullException>(()
                                                                             => handler.HandleAsync(notification: null));

            Assert.Equal("notification", exception.ParamName);
        }
Example #2
0
        public void AddEventHandler_HandlerIsAttached()
        {
            // Arrange
            var services = CreateServices();
            var builder  = CreateBuilder(services);
            var handler  = new OpenIddictServerEventHandler <ApplyAuthorizationResponse>(
                (notification, cancellationToken) => Task.CompletedTask);

            // Act
            builder.AddEventHandler(handler);

            // Assert
            Assert.Contains(services, service =>
                            service.ServiceType == typeof(IOpenIddictServerEventHandler <ApplyAuthorizationResponse>) &&
                            service.ImplementationInstance == handler);
        }
        public async Task HandleAsync_InvokesInlineHandler()
        {
            // Arrange
            var marker  = false;
            var handler = new OpenIddictServerEventHandler <Event>(
                notification =>
            {
                marker = true;
                return(Task.FromResult(OpenIddictServerEventState.Handled));
            });

            // Act
            await handler.HandleAsync(new Event());

            // Assert
            Assert.True(marker);
        }