Home / Class/ HttpConversionUtilTest Class — netty Architecture

HttpConversionUtilTest Class — netty Architecture

Architecture documentation for the HttpConversionUtilTest class in HttpConversionUtilTest.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791["HttpConversionUtilTest"]
  88e0efc0_46c8_b634_5d32_b40c633f83d2["HttpConversionUtilTest.java"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|defined in| 88e0efc0_46c8_b634_5d32_b40c633f83d2
  9ae70357_e048_31d0_f2ae_b2bede2168b9["connectNoPath()"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|method| 9ae70357_e048_31d0_f2ae_b2bede2168b9
  89f97682_562e_db69_9912_3e79df7ebe37["setHttp3AuthorityWithoutUserInfo()"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|method| 89f97682_562e_db69_9912_3e79df7ebe37
  54feab93_2137_a59c_969a_ecf1df0eb51f["setHttp3AuthorityWithUserInfo()"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|method| 54feab93_2137_a59c_969a_ecf1df0eb51f
  5dac2b56_5bba_8c21_dea8_8589d9f5f190["setHttp3AuthorityNullOrEmpty()"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|method| 5dac2b56_5bba_8c21_dea8_8589d9f5f190
  ec0b44a5_970d_50a7_1536_19b1f0fb79c0["setHttp2AuthorityWithEmptyAuthority()"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|method| ec0b44a5_970d_50a7_1536_19b1f0fb79c0
  780cb8ae_6d9d_37bb_2bf8_28abde11db6a["stripTEHeaders()"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|method| 780cb8ae_6d9d_37bb_2bf8_28abde11db6a
  cde7e549_4fe8_05f3_334f_cf31e0ec5ddd["stripTEHeadersExcludingTrailers()"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|method| cde7e549_4fe8_05f3_334f_cf31e0ec5ddd
  dd679a65_4369_6cc5_41a9_4752385ea42b["stripTEHeadersCsvSeparatedExcludingTrailers()"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|method| dd679a65_4369_6cc5_41a9_4752385ea42b
  9073c562_e873_8e62_6df6_b8121e666c53["stripTEHeadersCsvSeparatedAccountsForValueSimilarToTrailers()"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|method| 9073c562_e873_8e62_6df6_b8121e666c53
  e95f7c31_9254_9d53_9135_4f4cab8843ee["stripTEHeadersAccountsForValueSimilarToTrailers()"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|method| e95f7c31_9254_9d53_9135_4f4cab8843ee
  116d717b_36c1_91ac_c1b6_55869377c589["stripTEHeadersAccountsForOWS()"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|method| 116d717b_36c1_91ac_c1b6_55869377c589
  f84a4211_af50_23bf_90cf_27810b89de67["stripConnectionHeadersAndNominees()"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|method| f84a4211_af50_23bf_90cf_27810b89de67
  5a596aa7_a795_4367_9835_7415ef193862["stripConnectionNomineesWithCsv()"]
  b5e6fbc0_e12d_cbf9_49ab_affded2b7791 -->|method| 5a596aa7_a795_4367_9835_7415ef193862

Relationship Graph

Source Code

codec-http3/src/test/java/io/netty/handler/codec/http3/HttpConversionUtilTest.java lines 44–230

public class HttpConversionUtilTest {

    @Test
    public void connectNoPath() throws Exception {
        String authority = "netty.io:80";
        Http3Headers headers = new DefaultHttp3Headers();
        headers.authority(authority);
        headers.method(HttpMethod.CONNECT.asciiName());
        HttpRequest request = HttpConversionUtil.toHttpRequest(0, headers, true);
        assertNotNull(request);
        assertEquals(authority, request.uri());
        assertEquals(authority, request.headers().get(HOST));
    }

    @Test
    public void setHttp3AuthorityWithoutUserInfo() {
        Http3Headers headers = new DefaultHttp3Headers();

        HttpConversionUtil.setHttp3Authority("foo", headers);
        assertEquals(new AsciiString("foo"), headers.authority());
    }

    @Test
    public void setHttp3AuthorityWithUserInfo() {
        Http3Headers headers = new DefaultHttp3Headers();

        HttpConversionUtil.setHttp3Authority("info@foo", headers);
        assertEquals(new AsciiString("foo"), headers.authority());

        HttpConversionUtil.setHttp3Authority("@foo.bar", headers);
        assertEquals(new AsciiString("foo.bar"), headers.authority());
    }

    @Test
    public void setHttp3AuthorityNullOrEmpty() {
        Http3Headers headers = new DefaultHttp3Headers();

        HttpConversionUtil.setHttp3Authority(null, headers);
        assertNull(headers.authority());

        HttpConversionUtil.setHttp3Authority("", headers);
        assertSame(AsciiString.EMPTY_STRING, headers.authority());
    }

    @Test
    public void setHttp2AuthorityWithEmptyAuthority() {
        assertThrows(IllegalArgumentException.class,
                () -> HttpConversionUtil.setHttp3Authority("info@", new DefaultHttp3Headers()));
    }

    @Test
    public void stripTEHeaders() {
        HttpHeaders inHeaders = new DefaultHttpHeaders();
        inHeaders.add(TE, GZIP);
        Http3Headers out = new DefaultHttp3Headers();
        HttpConversionUtil.toHttp3Headers(inHeaders, out);
        assertTrue(out.isEmpty());
    }

    @Test
    public void stripTEHeadersExcludingTrailers() {
        HttpHeaders inHeaders = new DefaultHttpHeaders();
        inHeaders.add(TE, GZIP);
        inHeaders.add(TE, TRAILERS);
        Http3Headers out = new DefaultHttp3Headers();
        HttpConversionUtil.toHttp3Headers(inHeaders, out);
        assertSame(TRAILERS, out.get(TE));
    }

    @Test
    public void stripTEHeadersCsvSeparatedExcludingTrailers() {
        HttpHeaders inHeaders = new DefaultHttpHeaders();
        inHeaders.add(TE, GZIP + "," + TRAILERS);
        Http3Headers out = new DefaultHttp3Headers();
        HttpConversionUtil.toHttp3Headers(inHeaders, out);
        assertSame(TRAILERS, out.get(TE));
    }

    @Test
    public void stripTEHeadersCsvSeparatedAccountsForValueSimilarToTrailers() {
        HttpHeaders inHeaders = new DefaultHttpHeaders();

Frequently Asked Questions

What is the HttpConversionUtilTest class?
HttpConversionUtilTest is a class in the netty codebase, defined in codec-http3/src/test/java/io/netty/handler/codec/http3/HttpConversionUtilTest.java.
Where is HttpConversionUtilTest defined?
HttpConversionUtilTest is defined in codec-http3/src/test/java/io/netty/handler/codec/http3/HttpConversionUtilTest.java at line 44.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free