@Test
    void receiveResponseWithStandardFlowOnHttp2() throws Exception {
        try (ServerSocket ss = new ServerSocket(0);
             ClientFactory clientFactory =
                     ClientFactory.builder()
                                  .useHttp2Preface(true)
                                  .http2InitialConnectionWindowSize(Http2CodecUtil.DEFAULT_WINDOW_SIZE)
                                  .http2InitialStreamWindowSize(Http2CodecUtil.DEFAULT_WINDOW_SIZE)
                                  .build()) {
            ss.setSoTimeout(10000);

            final int port = ss.getLocalPort();
            final WebClient client = WebClient.builder("http://127.0.0.1:" + port)
                                              .factory(clientFactory)
                                              .build();
            final CompletableFuture<AggregatedHttpResponse> future =
                    client.prepare()
                          .post("/")
                          .content("foo")
                          .header(HttpHeaderNames.EXPECT, HttpHeaderValues.CONTINUE)
                          .execute()
                          .aggregate();

            try (Socket s = ss.accept()) {
                final InputStream in = s.getInputStream();
                final BufferedOutputStream bos = new BufferedOutputStream(s.getOutputStream());

                // Read the connection preface and discard it.
                readBytes(in, connectionPrefaceBuf().capacity());

                // Read a SETTINGS frame and validate it.
                readSettingsFrame(in);
                sendEmptySettingsAndAckFrame(bos);

                readBytes(in, 9); // Read a SETTINGS_ACK frame and discard it.

                // Read a HEADERS frame and validate it.
                readHeadersFrame(new DefaultHttp2HeadersDecoder(), in, true);
                // Check that the data is not sent until sending 100-continue response.
                Thread.sleep(1000);
                assertThat(in.available()).isZero();
                // Send a CREATED response.
                sendFrameHeaders(bos, HttpStatus.CREATED, true, 3);

                final AggregatedHttpResponse res = future.join();
                assertThat(res.status()).isEqualTo(HttpStatus.CREATED);
            }
        }
    }
This test is to check the behavior of the HttpClient when the 'Expect: 100-continue' header is set.
core/src/test/java/com/linecorp/armeria/client/HttpClientExpect100HeaderTest.java