Home / Class/ QueryStringEncoderTest Class — netty Architecture

QueryStringEncoderTest Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  f6ecde5f_a6cb_4228_5a07_4f8a4fb23b6c["QueryStringEncoderTest"]
  e41c6c6f_417f_016c_fb54_448de39deb35["QueryStringEncoderTest.java"]
  f6ecde5f_a6cb_4228_5a07_4f8a4fb23b6c -->|defined in| e41c6c6f_417f_016c_fb54_448de39deb35
  7ba86c23_e5da_71b0_02b1_a19a677d100d["testDefaultEncoding()"]
  f6ecde5f_a6cb_4228_5a07_4f8a4fb23b6c -->|method| 7ba86c23_e5da_71b0_02b1_a19a677d100d
  d92098e5_6e27_ccee_6782_5f1cf3a4f9df["testNonDefaultEncoding()"]
  f6ecde5f_a6cb_4228_5a07_4f8a4fb23b6c -->|method| d92098e5_6e27_ccee_6782_5f1cf3a4f9df
  08ad1568_09eb_4db4_8291_9f0a56675093["testWhitespaceEncoding()"]
  f6ecde5f_a6cb_4228_5a07_4f8a4fb23b6c -->|method| 08ad1568_09eb_4db4_8291_9f0a56675093

Relationship Graph

Source Code

codec-http/src/test/java/io/netty/handler/codec/http/QueryStringEncoderTest.java lines 25–81

public class QueryStringEncoderTest {

    @Test
    public void testDefaultEncoding() throws Exception {
        QueryStringEncoder e;

        e = new QueryStringEncoder("/foo");
        e.addParam("a", "b=c");
        assertEquals("/foo?a=b%3Dc", e.toString());
        assertEquals(new URI("/foo?a=b%3Dc"), e.toUri());

        e = new QueryStringEncoder("/foo/\u00A5");
        e.addParam("a", "\u00A5");
        assertEquals("/foo/\u00A5?a=%C2%A5", e.toString());
        assertEquals(new URI("/foo/\u00A5?a=%C2%A5"), e.toUri());

        e = new QueryStringEncoder("/foo/\u00A5");
        e.addParam("a", "abc\u00A5");
        assertEquals("/foo/\u00A5?a=abc%C2%A5", e.toString());
        assertEquals(new URI("/foo/\u00A5?a=abc%C2%A5"), e.toUri());

        e = new QueryStringEncoder("/foo");
        e.addParam("a", "1");
        e.addParam("b", "2");
        assertEquals("/foo?a=1&b=2", e.toString());
        assertEquals(new URI("/foo?a=1&b=2"), e.toUri());

        e = new QueryStringEncoder("/foo");
        e.addParam("a", "1");
        e.addParam("b", "");
        e.addParam("c", null);
        e.addParam("d", null);
        assertEquals("/foo?a=1&b=&c&d", e.toString());
        assertEquals(new URI("/foo?a=1&b=&c&d"), e.toUri());

        e = new QueryStringEncoder("/foo");
        e.addParam("test", "a~b");
        assertEquals("/foo?test=a~b", e.toString());
        assertEquals(new URI("/foo?test=a~b"), e.toUri());
    }

    @Test
    public void testNonDefaultEncoding() throws Exception {
        QueryStringEncoder e = new QueryStringEncoder("/foo/\u00A5", StandardCharsets.UTF_16);
        e.addParam("a", "\u00A5");
        assertEquals("/foo/\u00A5?a=%FE%FF%00%A5", e.toString());
        assertEquals(new URI("/foo/\u00A5?a=%FE%FF%00%A5"), e.toUri());
    }

    @Test
    public void testWhitespaceEncoding() throws Exception {
        QueryStringEncoder e = new QueryStringEncoder("/foo");
        e.addParam("a", "b c");
        assertEquals("/foo?a=b%20c", e.toString());
        assertEquals(new URI("/foo?a=b%20c"), e.toUri());
    }
}

Frequently Asked Questions

What is the QueryStringEncoderTest class?
QueryStringEncoderTest is a class in the netty codebase, defined in codec-http/src/test/java/io/netty/handler/codec/http/QueryStringEncoderTest.java.
Where is QueryStringEncoderTest defined?
QueryStringEncoderTest is defined in codec-http/src/test/java/io/netty/handler/codec/http/QueryStringEncoderTest.java at line 25.

Analyze Your Own Codebase

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

Try Supermodel Free