Test | Input | Base | User Agents with differences |
---|---|---|---|
0 | "http://example\t.\norg" | http://example.org/foo/bar | addressable ie nodejs safari |
1 | "http://user:pass@foo:21/bar;par?b#c" | http://example.org/foo/bar | addressable ie opera safari |
2 | "http:foo.com" | http://example.org/foo/bar | addressable ie |
3 | "\t :foo.com \n" | http://example.org/foo/bar | addressable ie |
4 | " foo.com " | http://example.org/foo/bar | addressable ie |
5 | "a:\t foo.com" | http://example.org/foo/bar | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
6 | "http://f:21/ b ? d # e " | http://example.org/foo/bar | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
7 | "http://f:/c" | http://example.org/foo/bar | ie |
8 | "http://f:0/c" | http://example.org/foo/bar | addressable opera |
9 | "http://f:00000000000000/c" | http://example.org/foo/bar | addressable nodejs opera safari |
10 | "http://f:00000000000000000000080/c" | http://example.org/foo/bar | addressable ie nodejs safari |
11 | "http://f:b/c" | http://example.org/foo/bar | addressable chrome firefox ie nodejs opera |
12 | "http://f: /c" | http://example.org/foo/bar | addressable chrome firefox ie nodejs opera |
13 | "http://f:\n/c" | http://example.org/foo/bar | addressable ie nodejs safari |
14 | "http://f:fifty-two/c" | http://example.org/foo/bar | addressable chrome firefox ie nodejs opera |
15 | "http://f:999999/c" | http://example.org/foo/bar | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
16 | "http://f: 21 / b ? d # e " | http://example.org/foo/bar | testdata chrome firefox galimatias ie nodejs opera rust safari |
17 | "" | http://example.org/foo/bar | ie |
18 | " \t" | http://example.org/foo/bar | addressable ie |
19 | ":foo.com/" | http://example.org/foo/bar | addressable ie |
20 | ":foo.com\\" | http://example.org/foo/bar | addressable firefox ie opera |
21 | ":" | http://example.org/foo/bar | addressable ie |
22 | ":a" | http://example.org/foo/bar | addressable ie |
23 | ":/" | http://example.org/foo/bar | addressable ie |
24 | ":\\" | http://example.org/foo/bar | addressable firefox ie opera |
25 | ":#" | http://example.org/foo/bar | addressable galimatias ie nodejs rust |
26 | "?" | http://example.org/foo/bar | galimatias ie nodejs rust |
27 | "/" | http://example.org/foo/bar | ie |
28 | ":23" | http://example.org/foo/bar | addressable ie |
29 | "/:23" | http://example.org/foo/bar | ie |
30 | "::" | http://example.org/foo/bar | addressable ie |
31 | "::23" | http://example.org/foo/bar | addressable ie |
32 | "foo://" | http://example.org/foo/bar | testdata chrome galimatias ie opera safari |
33 | "http://a:b@c:29/d" | http://example.org/foo/bar | addressable ie opera safari |
34 | "http::@c:29" | http://example.org/foo/bar | addressable firefox ie |
35 | "http://&a:foo(b]c@d:2/" | http://example.org/foo/bar | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
36 | "http://::@c@d:2" | http://example.org/foo/bar | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
37 | "http://foo.com:b@d/" | http://example.org/foo/bar | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
38 | "http://foo.com/\\@" | http://example.org/foo/bar | addressable firefox ie opera |
39 | "http:\\\\foo.com\\" | http://example.org/foo/bar | addressable firefox ie opera |
40 | "http:\\\\a\\b:c\\d@foo.com\\" | http://example.org/foo/bar | addressable firefox ie opera |
41 | "foo:/" | http://example.org/foo/bar | firefox galimatias opera rust |
42 | "foo:/bar.com/" | http://example.org/foo/bar | firefox galimatias opera rust |
43 | "foo://///////" | http://example.org/foo/bar | testdata addressable chrome galimatias ie nodejs opera safari |
44 | "foo://///////bar.com/" | http://example.org/foo/bar | testdata addressable chrome galimatias ie nodejs opera safari |
45 | "foo:////://///" | http://example.org/foo/bar | testdata addressable chrome galimatias ie nodejs opera safari |
46 | "c:/foo" | http://example.org/foo/bar | testdata addressable chrome galimatias ie nodejs opera safari |
47 | "//foo/bar" | http://example.org/foo/bar | ie |
48 | "http://foo/path;a??e#f#g" | http://example.org/foo/bar | ie |
49 | "http://foo/abcd?efgh?ijkl" | http://example.org/foo/bar | ie |
50 | "http://foo/abcd#foo?bar" | http://example.org/foo/bar | ie |
51 | "[61:24:74]:98" | http://example.org/foo/bar | addressable firefox ie |
52 | "http:[61:27]/:foo" | http://example.org/foo/bar | addressable firefox ie |
53 | "http://[1::2]:3:4" | http://example.org/foo/bar | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
54 | "http://2001::1" | http://example.org/foo/bar | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
55 | "http://2001::1]" | http://example.org/foo/bar | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
56 | "http://2001::1]:80" | http://example.org/foo/bar | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
57 | "http://[2001::1]" | http://example.org/foo/bar | addressable firefox galimatias ie nodejs |
58 | "http://[2001::1]:80" | http://example.org/foo/bar | addressable firefox galimatias ie nodejs |
59 | "http:/example.com/" | http://example.org/foo/bar | addressable ie safari |
60 | "ftp:/example.com/" | http://example.org/foo/bar | addressable ie opera |
61 | "https:/example.com/" | http://example.org/foo/bar | addressable ie opera |
62 | "madeupscheme:/example.com/" | http://example.org/foo/bar | firefox galimatias opera rust |
63 | "file:/example.com/" | http://example.org/foo/bar | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
64 | "ftps:/example.com/" | http://example.org/foo/bar | firefox galimatias opera rust |
65 | "gopher:/example.com/" | http://example.org/foo/bar | addressable firefox ie opera |
66 | "ws:/example.com/" | http://example.org/foo/bar | addressable ie nodejs opera |
67 | "wss:/example.com/" | http://example.org/foo/bar | addressable ie nodejs opera |
68 | "data:/example.com/" | http://example.org/foo/bar | firefox galimatias opera rust |
69 | "javascript:/example.com/" | http://example.org/foo/bar | firefox galimatias opera rust |
70 | "mailto:/example.com/" | http://example.org/foo/bar | firefox galimatias opera rust |
71 | "http:example.com/" | http://example.org/foo/bar | addressable ie |
72 | "ftp:example.com/" | http://example.org/foo/bar | addressable ie opera |
73 | "https:example.com/" | http://example.org/foo/bar | addressable ie opera |
74 | "madeupscheme:example.com/" | http://example.org/foo/bar | firefox galimatias nodejs rust |
75 | "ftps:example.com/" | http://example.org/foo/bar | firefox galimatias nodejs rust |
76 | "gopher:example.com/" | http://example.org/foo/bar | addressable firefox ie opera |
77 | "ws:example.com/" | http://example.org/foo/bar | addressable ie nodejs opera |
78 | "wss:example.com/" | http://example.org/foo/bar | addressable ie nodejs opera |
79 | "data:example.com/" | http://example.org/foo/bar | firefox galimatias nodejs rust |
80 | "javascript:example.com/" | http://example.org/foo/bar | firefox galimatias rust |
81 | "mailto:example.com/" | http://example.org/foo/bar | firefox galimatias nodejs rust |
82 | "/a/b/c" | http://example.org/foo/bar | ie |
83 | "/a/ /c" | http://example.org/foo/bar | addressable ie |
84 | "/a%2fc" | http://example.org/foo/bar | galimatias ie |
85 | "/a/%2f/c" | http://example.org/foo/bar | galimatias ie |
86 | "data:text/html,test#test" | http://example.org/foo/bar | testdata addressable chrome galimatias ie nodejs opera safari |
87 | "file:c:\\foo\\bar.html" | file:///tmp/mock/path | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
88 | " File:c|////foo\\bar.html" | file:///tmp/mock/path | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
89 | "C|/foo/bar" | file:///tmp/mock/path | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
90 | "/C|\\foo\\bar" | file:///tmp/mock/path | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
91 | "//C|/foo/bar" | file:///tmp/mock/path | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
92 | "//server/file" | file:///tmp/mock/path | firefox galimatias ie |
93 | "\\\\server\\file" | file:///tmp/mock/path | addressable firefox galimatias opera |
94 | "/\\server/file" | file:///tmp/mock/path | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
95 | "file:///foo/bar.txt" | file:///tmp/mock/path | galimatias |
96 | "file:///home/me" | file:///tmp/mock/path | galimatias |
97 | "//" | file:///tmp/mock/path | addressable galimatias ie nodejs |
98 | "///" | file:///tmp/mock/path | galimatias ie |
99 | "///test" | file:///tmp/mock/path | galimatias ie |
100 | "file://test" | file:///tmp/mock/path | addressable firefox galimatias |
101 | "file://localhost" | file:///tmp/mock/path | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
102 | "file://localhost/" | file:///tmp/mock/path | firefox galimatias ie safari |
103 | "file://localhost/test" | file:///tmp/mock/path | firefox galimatias ie safari |
104 | "test" | file:///tmp/mock/path | galimatias ie |
105 | "file:test" | file:///tmp/mock/path | addressable galimatias ie opera |
106 | "http://example.com/././foo" | about:blank | ie nodejs |
107 | "http://example.com/./.foo" | about:blank | ie nodejs |
108 | "http://example.com/foo/." | about:blank | ie nodejs |
109 | "http://example.com/foo/./" | about:blank | ie nodejs |
110 | "http://example.com/foo/bar/.." | about:blank | ie nodejs |
111 | "http://example.com/foo/bar/../" | about:blank | ie nodejs |
112 | "http://example.com/foo/..bar" | about:blank | ie |
113 | "http://example.com/foo/bar/../ton" | about:blank | ie nodejs |
114 | "http://example.com/foo/bar/../ton/../../a" | about:blank | ie nodejs |
115 | "http://example.com/foo/../../.." | about:blank | ie nodejs |
116 | "http://example.com/foo/../../../ton" | about:blank | ie nodejs |
117 | "http://example.com/foo/%2e" | about:blank | addressable firefox ie nodejs safari |
118 | "http://example.com/foo/%2e%2" | about:blank | chrome galimatias ie |
119 | "http://example.com/foo/%2e./%2e%2e/.%2e/%2e.bar" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
120 | "http://example.com////../.." | about:blank | ie nodejs |
121 | "http://example.com/foo/bar//../.." | about:blank | ie nodejs |
122 | "http://example.com/foo/bar//.." | about:blank | ie nodejs |
123 | "http://example.com/foo" | about:blank | ie |
124 | "http://example.com/%20foo" | about:blank | ie |
125 | "http://example.com/foo%" | about:blank | ie |
126 | "http://example.com/foo%2" | about:blank | ie |
127 | "http://example.com/foo%2zbar" | about:blank | ie |
128 | "http://example.com/foo%2©zbar" | about:blank | addressable ie nodejs |
129 | "http://example.com/foo%41%7a" | about:blank | chrome galimatias ie |
130 | "http://example.com/foo\t\u0091%91" | about:blank | addressable ie nodejs |
131 | "http://example.com/foo%00%51" | about:blank | chrome ie |
132 | "http://example.com/(%28:%3A%29)" | about:blank | ie |
133 | "http://example.com/%3A%3a%3C%3c" | about:blank | galimatias ie |
134 | "http://example.com/foo\tbar" | about:blank | addressable ie nodejs |
135 | "http://example.com\\\\foo\\\\bar" | about:blank | addressable firefox ie opera |
136 | "http://example.com/%7Ffp3%3Eju%3Dduvgw%3Dd" | about:blank | ie |
137 | "http://example.com/@asdf%40" | about:blank | ie |
138 | "http://example.com/你好你好" | about:blank | addressable ie nodejs |
139 | "http://example.com/‥/foo" | about:blank | addressable ie nodejs |
140 | "http://example.com//foo" | about:blank | addressable ie nodejs |
141 | "http://example.com//foo//bar" | about:blank | addressable ie nodejs |
142 | "http://www.google.com/foo?bar=baz#" | about:blank | galimatias ie nodejs rust |
143 | "http://www.google.com/foo?bar=baz# »" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
144 | "http://[www.google.com]/" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
145 | "http://www.google.com" | about:blank | addressable ie |
146 | "http://192.0x00A80001" | about:blank | addressable chrome ie |
147 | "http://www/foo%2Ehtml" | about:blank | chrome ie |
148 | "http://www/foo/%2E/html" | about:blank | addressable ie nodejs safari |
149 | "http://user:pass@/" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
150 | "http://%25DOMAIN:foobar@foodomain.com/" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
151 | "http:\\\\www.google.com\\foo" | about:blank | addressable firefox ie opera |
152 | "http://foo:80/" | about:blank | addressable ie nodejs |
153 | "http://foo:81/" | about:blank | |
154 | "httpa://foo:80/" | about:blank | testdata addressable chrome galimatias ie nodejs opera safari |
155 | "http://foo:-80/" | about:blank | addressable chrome firefox ie nodejs opera |
156 | "https://foo:443/" | about:blank | addressable ie nodejs opera |
157 | "https://foo:80/" | about:blank | |
158 | "ftp://foo:21/" | about:blank | addressable ie nodejs opera |
159 | "ftp://foo:80/" | about:blank | |
160 | "gopher://foo:70/" | about:blank | addressable firefox ie nodejs opera |
161 | "gopher://foo:443/" | about:blank | firefox |
162 | "ws://foo:80/" | about:blank | addressable ie nodejs |
163 | "ws://foo:81/" | about:blank | |
164 | "ws://foo:443/" | about:blank | |
165 | "ws://foo:815/" | about:blank | |
166 | "wss://foo:80/" | about:blank | |
167 | "wss://foo:81/" | about:blank | |
168 | "wss://foo:443/" | about:blank | addressable ie nodejs |
169 | "wss://foo:815/" | about:blank | |
170 | "http:/example.com/" | about:blank | addressable ie opera |
171 | "ftp:/example.com/" | about:blank | addressable ie opera |
172 | "https:/example.com/" | about:blank | addressable ie opera |
173 | "madeupscheme:/example.com/" | about:blank | firefox galimatias opera rust |
174 | "file:/example.com/" | about:blank | addressable galimatias nodejs opera |
175 | "ftps:/example.com/" | about:blank | firefox galimatias opera rust |
176 | "gopher:/example.com/" | about:blank | addressable firefox ie opera |
177 | "ws:/example.com/" | about:blank | addressable ie nodejs opera |
178 | "wss:/example.com/" | about:blank | addressable ie nodejs opera |
179 | "data:/example.com/" | about:blank | firefox galimatias opera rust |
180 | "javascript:/example.com/" | about:blank | firefox galimatias opera rust |
181 | "mailto:/example.com/" | about:blank | firefox galimatias opera rust |
182 | "http:example.com/" | about:blank | addressable ie opera |
183 | "ftp:example.com/" | about:blank | addressable ie opera |
184 | "https:example.com/" | about:blank | addressable ie opera |
185 | "madeupscheme:example.com/" | about:blank | firefox galimatias nodejs rust |
186 | "ftps:example.com/" | about:blank | firefox galimatias nodejs rust |
187 | "gopher:example.com/" | about:blank | addressable firefox ie opera |
188 | "ws:example.com/" | about:blank | addressable ie nodejs opera |
189 | "wss:example.com/" | about:blank | addressable ie nodejs opera |
190 | "data:example.com/" | about:blank | firefox galimatias nodejs rust |
191 | "javascript:example.com/" | about:blank | firefox galimatias rust |
192 | "mailto:example.com/" | about:blank | firefox galimatias nodejs rust |
193 | "http:@www.example.com" | about:blank | addressable ie opera |
194 | "http:/@www.example.com" | about:blank | addressable ie opera |
195 | "http://@www.example.com" | about:blank | addressable ie |
196 | "http:a:b@www.example.com" | about:blank | addressable ie opera safari |
197 | "http:/a:b@www.example.com" | about:blank | addressable ie opera safari |
198 | "http://a:b@www.example.com" | about:blank | addressable ie opera safari |
199 | "http://@pple.com" | about:blank | addressable ie |
200 | "http::b@www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust |
201 | "http:/:b@www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust |
202 | "http://:b@www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust |
203 | "http:/:@/www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
204 | "http://user@/www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
205 | "http:@/www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
206 | "http:/@/www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
207 | "http://@/www.example.com" | about:blank | testdata addressable chrome firefox galimatias nodejs opera rust safari |
208 | "https:@/www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
209 | "http:a:b@/www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
210 | "http:/a:b@/www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
211 | "http://a:b@/www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
212 | "http::@/www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
213 | "http:a:@www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
214 | "http:/a:@www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
215 | "http://a:@www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
216 | "http://www.@pple.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust |
217 | "http:@:www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
218 | "http:/@:www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
219 | "http://@:www.example.com" | about:blank | testdata chrome firefox galimatias ie nodejs opera rust safari |
220 | "http://:@www.example.com" | about:blank | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
221 | "/" | http://www.example.com/test | ie |
222 | "/test.txt" | http://www.example.com/test | ie |
223 | "." | http://www.example.com/test | ie |
224 | ".." | http://www.example.com/test | ie |
225 | "test.txt" | http://www.example.com/test | ie |
226 | "./test.txt" | http://www.example.com/test | ie |
227 | "../test.txt" | http://www.example.com/test | ie |
228 | "../aaa/test.txt" | http://www.example.com/test | ie |
229 | "../../test.txt" | http://www.example.com/test | ie |
230 | "中/test.txt" | http://www.example.com/test | addressable ie nodejs |
231 | "http://www.example2.com" | http://www.example.com/test | addressable ie |
232 | "//www.example2.com" | http://www.example.com/test | addressable ie |
233 | "http://ExAmPlE.CoM" | http://other.com/ | addressable ie |
234 | "http://example example.com" | http://other.com/ | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
235 | "http://Goo%20 goo%7C|.com" | http://other.com/ | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
236 | "http://GOO goo.com" | http://other.com/ | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
237 | "http://GOOgoo.com" | http://other.com/ | addressable ie nodejs opera rust |
238 | "http://www.foo。bar.com" | http://other.com/ | addressable ie rust |
239 | "http://\uFDD0zyx.com" | http://other.com/ | testdata addressable chrome firefox galimatias nodejs opera rust safari |
240 | "http://%ef%b7%90zyx.com" | http://other.com/ | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
241 | "http://Go.com" | http://other.com/ | addressable ie nodejs rust |
242 | "http://%41.com" | http://other.com/ | testdata addressable chrome firefox galimatias nodejs opera rust safari |
243 | "http://%ef%bc%85%ef%bc%94%ef%bc%91.com" | http://other.com/ | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
244 | "http://%00.com" | http://other.com/ | testdata addressable chrome firefox galimatias nodejs opera rust safari |
245 | "http://%ef%bc%85%ef%bc%90%ef%bc%90.com" | http://other.com/ | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
246 | "http://你好你好" | http://other.com/ | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
247 | "http://%zz%66%a.com" | http://other.com/ | testdata addressable chrome firefox galimatias nodejs opera rust safari |
248 | "http://%25" | http://other.com/ | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
249 | "http://hello%00" | http://other.com/ | testdata addressable chrome firefox galimatias nodejs opera rust safari |
250 | "http://%30%78%63%30%2e%30%32%35%30.01" | http://other.com/ | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
251 | "http://%30%78%63%30%2e%30%32%35%30.01%2e" | http://other.com/ | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
252 | "http://192.168.0.257" | http://other.com/ | addressable chrome ie |
253 | "http://%3g%78%63%30%2e%30%32%35%30%2E.01" | http://other.com/ | testdata addressable chrome firefox galimatias nodejs opera rust safari |
254 | "http://192.168.0.1 hello" | http://other.com/ | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |
255 | "http://0Xc0.0250.01" | http://other.com/ | addressable chrome ie nodejs rust |
256 | "http://[google.com]" | http://other.com/ | testdata addressable chrome firefox galimatias ie nodejs opera rust safari |