private static void readHeadersFrame(DefaultHttp2HeadersDecoder headersDecoder, InputStream in,
                                         boolean hasExpect100ContinueHeader) throws Exception {
        final byte[] frameHeader = readBytes(in, 9);
        final int payloadLength = payloadLength(frameHeader);
        final byte[] headersPayload = readBytes(in, payloadLength);

        final ByteBuf payloadBuf = Unpooled.wrappedBuffer(headersPayload);
        final Http2Headers headers = headersDecoder.decodeHeaders(0, payloadBuf);

        assertThat(get(headers, HttpHeaderNames.METHOD)).isEqualTo("POST");
        assertThat(get(headers, HttpHeaderNames.PATH)).isEqualTo("/");
        assertThat(get(headers, HttpHeaderNames.SCHEME)).isEqualTo("http");
        assertThat(get(headers, HttpHeaderNames.AUTHORITY)).startsWith("127.0.0.1");
        assertThat(get(headers, HttpHeaderNames.USER_AGENT)).startsWith("armeria/");
        assertThat(get(headers, HttpHeaderNames.CONTENT_TYPE)).isEqualTo("text/plain; charset=utf-8");
        if (hasExpect100ContinueHeader) {
            assertThat(get(headers, HttpHeaderNames.EXPECT)).isEqualTo(HttpHeaderValues.CONTINUE.toString());
        }
    }
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