@Test
    void testServerErrorHandler() throws Exception {
        final WebClient client = WebClient.of(newUrl("h1c"));

        // ArithmeticException will be handled by serverErrorHandler
        final HttpResponse response1 = client.get("/annotated/unhandled1");
        final AggregatedHttpResponse res1 = response1.aggregate().join();
        assertThat(res1.status()).isEqualTo(HttpStatus.OK);
        assertThat(res1.contentUtf8()).isEqualTo("ArithmeticException was handled by serverErrorHandler!");

        // IllegalStateException will be handled by serverErrorHandler
        final HttpResponse response2 = client.get("/annotated/unhandled2");
        final AggregatedHttpResponse res2 = response2.aggregate().join();
        assertThat(res2.status()).isEqualTo(HttpStatus.OK);
        assertThat(res2.contentUtf8()).isEqualTo("IllegalStateException was handled by serverErrorHandler!");

        // IllegalAccessException will be handled by DefaultServerErrorHandler which is used as the
        // final fallback when all customized handlers return null
        final HttpResponse response3 = client.get("/annotated/unhandled3");
        final AggregatedHttpResponse res3 = response3.aggregate().join();
        assertThat(res3.status()).isEqualTo(HttpStatus.INTERNAL_SERVER_ERROR);
    }
When a ServerErrorHandler @Bean is present,
Server.config().errorHandler() does not register a DefaultServerErrorHandler.
Since DefaultServerErrorHandler is not public, test were forced to compare toString.
Needs to be improved.
spring/boot3-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaAutoConfigurationTest.java