@@ -147,6 +147,34 @@ public void testAllowMalformed() throws IOException {
147
147
}
148
148
149
149
150
+ @ Test
151
+ public void testUrlDecode () throws Exception {
152
+ String url = "http://foo.com?baz=foo%20bat" ;
153
+ URLTokenizer tokenizer = createTokenizer (url , URLPart .QUERY );
154
+ tokenizer .setUrlDecode (true );
155
+ assertTokenStreamContents (tokenizer , stringArray ("baz=foo bat" ));
156
+ }
157
+
158
+
159
+ @ Test (expected = IOException .class )
160
+ public void testUrlDecodeIllegalCharacters () throws Exception {
161
+ String url = "http://foo.com?baz=foo%2vbat" ;
162
+ URLTokenizer tokenizer = createTokenizer (url , URLPart .QUERY );
163
+ tokenizer .setUrlDecode (true );
164
+ assertTokenStreamContents (tokenizer , "" );
165
+ }
166
+
167
+
168
+ @ Test
169
+ public void testUrlDecodeAllowMalformed () throws Exception {
170
+ String url = "http://foo.com?baz=foo%2vbat" ;
171
+ URLTokenizer tokenizer = createTokenizer (url , URLPart .QUERY );
172
+ tokenizer .setUrlDecode (true );
173
+ tokenizer .setAllowMalformed (true );
174
+ assertTokenStreamContents (tokenizer , "baz=foo%2vbat" );
175
+ }
176
+
177
+
150
178
private URLTokenizer createTokenizer (String input , URLPart part ) throws IOException {
151
179
URLTokenizer tokenizer = new URLTokenizer (part );
152
180
tokenizer .setReader (new StringReader (input ));
0 commit comments