@Test
    void exceededMaxStreamsForMultipleEventLoops() {
        try (ClientFactory clientFactory =
                     ClientFactory.builder()
                                  .connectionPoolListener(connectionPoolListenerWrapper)
                                  .maxNumEventLoopsPerEndpoint(2)
                                  .build()) {
            final WebClient client = WebClient.builder(server.uri(SessionProtocol.H2C))
                                              .factory(clientFactory)
                                              .build();
            final AtomicInteger opens = new AtomicInteger();
            connectionPoolListener = newConnectionPoolListener(opens::incrementAndGet, () -> {
            });

            final int numExpectedConnections = MAX_NUM_CONNECTIONS;
            final int numRequests = MAX_CONCURRENT_STREAMS * numExpectedConnections;

            runInsideEventLoop(clientFactory.eventLoopGroup(), () -> {
                for (int i = 0; i < numRequests; i++) {
                    client.get(PATH).aggregate();
                }
            });

            await().untilAsserted(() -> assertThat(responses).hasSize(numRequests));
            assertThat(opens).hasValue(numExpectedConnections);
        }
    }
Makes sure Armeria HTTP client respects {@code MAX_CONCURRENT_STREAMS} HTTP/2 setting.
core/src/test/java/com/linecorp/armeria/client/HttpClientMaxConcurrentStreamTest.java