testRef0("http: testRef0("http: testRef0("http: testRef0("http:
    public void testParsing() throws IOException {        String base = "http://a/b/c/d;p?q";        String uri01 = "g:h";        String uri02 = "g";        String uri03 = "./g";        String uri04 = "g/";        String uri05 = "/g";        String uri06 = "//g";        String uri07 = "?y";        String uri08 = "g?y";        String uri09 = "#s";        String uri10 = "g#s";        String uri11 = "g?y#s";        String uri12 = ";x";        String uri13 = "g;x";        String uri14 = "g;x?y#s";        String uri15 = "";        String uri16 = ".";        String uri17 = "./";        String uri18 = "..";        String uri19 = "../";        String uri20 = "../g";        String uri21 = "../..";        String uri22 = "../../";        String uri23 = "../../g";        String uri24 = "../../../g";        String uri25 = "../../../../g";        String uri26 = "/./g";        String uri27 = "/../g";        String uri28 = "g.";        String uri29 = ".g";        String uri30 = "g..";        String uri31 = "..g";        String uri32 = "./../g";        String uri33 = "./g/.";        String uri34 = "g/./h";        String uri35 = "g/../h";        String uri36 = "g;x=1/./y";        String uri37 = "g;x=1/../y";        String uri101 = "g:h";        String uri102 = "http://a/b/c/g";        String uri103 = "http://a/b/c/g";        String uri104 = "http://a/b/c/g/";        String uri105 = "http://a/g";        String uri106 = "http://g";        String uri107 = "http://a/b/c/d;p?y";        String uri108 = "http://a/b/c/g?y";        String uri109 = "http://a/b/c/d;p?q#s";        String uri110 = "http://a/b/c/g#s";        String uri111 = "http://a/b/c/g?y#s";        String uri112 = "http://a/b/c/;x";        String uri113 = "http://a/b/c/g;x";        String uri114 = "http://a/b/c/g;x?y#s";        String uri115 = "http://a/b/c/d;p?q";        String uri116 = "http://a/b/c/";        String uri117 = "http://a/b/c/";        String uri118 = "http://a/b/";        String uri119 = "http://a/b/";        String uri120 = "http://a/b/g";        String uri121 = "http://a/";        String uri122 = "http://a/";        String uri123 = "http://a/g";        String uri124 = "http://a/g";        String uri125 = "http://a/g";        String uri126 = "http://a/g";        String uri127 = "http://a/g";        String uri128 = "http://a/b/c/g.";        String uri129 = "http://a/b/c/.g";        String uri130 = "http://a/b/c/g..";        String uri131 = "http://a/b/c/..g";        String uri132 = "http://a/b/g";        String uri133 = "http://a/b/c/g/";        String uri134 = "http://a/b/c/g/h";        String uri135 = "http://a/b/c/h";        String uri136 = "http://a/b/c/g;x=1/y";        String uri137 = "http://a/b/c/y";        // Test the parsing of references into its components        testRef0("foo://example.com:8042/over/there?name=ferret#nose", "foo",                "example.com:8042", "/over/there", "name=ferret", "nose");        testRef0("urn:example:animal:ferret:nose", "urn", null,                "example:animal:ferret:nose", null, null);        testRef0("mailto:fred@example.com", "mailto", null, "fred@example.com",                null, null);        testRef0("foo://info.example.com?fred", "foo", "info.example.com",                null, "fred", null);        testRef0("*", null, null, "*", null, null);        // Test the resolution of relative references        testRef1(base, uri01, uri101);        testRef1(base, uri02, uri102);        testRef1(base, uri03, uri103);        testRef1(base, uri04, uri104);        testRef1(base, uri05, uri105);        testRef1(base, uri06, uri106);        testRef1(base, uri07, uri107);        testRef1(base, uri08, uri108);        testRef1(base, uri09, uri109);        testRef1(base, uri10, uri110);        testRef1(base, uri11, uri111);        testRef1(base, uri12, uri112);        testRef1(base, uri13, uri113);        testRef1(base, uri14, uri114);        testRef1(base, uri15, uri115);        testRef1(base, uri16, uri116);        testRef1(base, uri17, uri117);        testRef1(base, uri18, uri118);        testRef1(base, uri19, uri119);        testRef1(base, uri20, uri120);        testRef1(base, uri21, uri121);        testRef1(base, uri22, uri122);        testRef1(base, uri23, uri123);        testRef1(base, uri24, uri124);        testRef1(base, uri25, uri125);        testRef1(base, uri26, uri126);        testRef1(base, uri27, uri127);        testRef1(base, uri28, uri128);        testRef1(base, uri29, uri129);        testRef1(base, uri30, uri130);        testRef1(base, uri31, uri131);        testRef1(base, uri32, uri132);        testRef1(base, uri33, uri133);        testRef1(base, uri34, uri134);        testRef1(base, uri35, uri135);        testRef1(base, uri36, uri136);        testRef1(base, uri37, uri137);        // Test the relativization of absolute references        testRef2(base, uri102, uri02);        testRef2(base, uri104, uri04);        testRef2(base, uri107, uri07);        testRef2(base, uri108, uri08);        testRef2(base, uri109, uri09);        testRef2(base, uri110, uri10);        testRef2(base, uri111, uri11);        testRef2(base, uri112, uri12);        testRef2(base, uri113, uri13);        testRef2(base, uri114, uri14);        testRef2(base, uri116, uri16);        testRef2(base, uri118, uri18);        testRef2(base, uri120, uri20);        testRef2(base, uri121, uri21);        testRef2(base, uri123, uri23);    }