@ParameterizedTest
    @MethodSource("orElseHandlerArguments")
    void orElseHandler(boolean[] statuses, int nullHandler, boolean expectedStatus,
                       int expectedSuccessHandler, int expectedFailureHandler) {
        final Authorizer<String>[] authorizers = new Authorizer[statuses.length];
        Authorizer<String> authorizer = null;
        for (int i = 0; i < statuses.length; i++) {
            authorizers[i] = (i == nullHandler) ?
                             new NamedAuthorizer<>(Integer.toString(i), statuses[i], null, null, null)
                             : new NamedAuthorizer<>(Integer.toString(i), statuses[i]);
            authorizer = (i == 0) ? authorizers[i] : authorizer.orElse(authorizers[i]);
        }

        assertThat(authorizer).isNotNull();
        assertThat(serviceCtx).isNotNull();
        final AuthorizationStatus result = authorizer.authorizeAndSupplyHandlers(serviceCtx, "data")
                                                     .toCompletableFuture().join();
        assertThat(result).isNotNull();
        assertThat(result.isAuthorized()).isEqualTo(expectedStatus);
        final AuthSuccessHandler successHandler = result.successHandler();
        final AuthFailureHandler failureHandler = result.failureHandler();
        if (expectedSuccessHandler >= 0) {
            assertThat(successHandler).isNotNull();
            assertThat(successHandler.toString()).isEqualTo(Integer.toString(expectedSuccessHandler));
        } else {
            assertThat(successHandler).isNull();
        }
        if (expectedFailureHandler >= 0) {
            assertThat(failureHandler).isNotNull();
            assertThat(failureHandler.toString()).isEqualTo(Integer.toString(expectedFailureHandler));
        } else {
            assertThat(failureHandler).isNull();
        }
    }
When the first {@link Authorizer} returns a {@link CompletionStage} that fulfills with {@code null},
the second {@link Authorizer} shouldn't be invoked.
core/src/test/java/com/linecorp/armeria/server/auth/AuthorizerTest.java