Lines Matching full:http
6 RFC1808_BASE = "http://a/b/c/d;p?q#f"
7 RFC2396_BASE = "http://a/b/c/d;p?q"
8 RFC3986_BASE = 'http://a/b/c/d;p?q'
9 SIMPLE_BASE = 'http://a/b/c/d'
179 # urllib.parse.urlsplit treats 'http:' as an optimized special case,
180 # so we test both 'http:' and 'https:' in all the following.
204 str_schemes = ('http', 'https')
205 bytes_schemes = (b'http', b'https')
233 self.checkJoin(RFC1808_BASE, 'g', 'http://a/b/c/g')
234 self.checkJoin(RFC1808_BASE, './g', 'http://a/b/c/g')
235 self.checkJoin(RFC1808_BASE, 'g/', 'http://a/b/c/g/')
236 self.checkJoin(RFC1808_BASE, '/g', 'http://a/g')
237 self.checkJoin(RFC1808_BASE, '//g', 'http://g')
238 self.checkJoin(RFC1808_BASE, 'g?y', 'http://a/b/c/g?y')
239 self.checkJoin(RFC1808_BASE, 'g?y/./x', 'http://a/b/c/g?y/./x')
240 self.checkJoin(RFC1808_BASE, '#s', 'http://a/b/c/d;p?q#s')
241 self.checkJoin(RFC1808_BASE, 'g#s', 'http://a/b/c/g#s')
242 self.checkJoin(RFC1808_BASE, 'g#s/./x', 'http://a/b/c/g#s/./x')
243 self.checkJoin(RFC1808_BASE, 'g?y#s', 'http://a/b/c/g?y#s')
244 self.checkJoin(RFC1808_BASE, 'g;x', 'http://a/b/c/g;x')
245 self.checkJoin(RFC1808_BASE, 'g;x?y#s', 'http://a/b/c/g;x?y#s')
246 self.checkJoin(RFC1808_BASE, '.', 'http://a/b/c/')
247 self.checkJoin(RFC1808_BASE, './', 'http://a/b/c/')
248 self.checkJoin(RFC1808_BASE, '..', 'http://a/b/')
249 self.checkJoin(RFC1808_BASE, '../', 'http://a/b/')
250 self.checkJoin(RFC1808_BASE, '../g', 'http://a/b/g')
251 self.checkJoin(RFC1808_BASE, '../..', 'http://a/')
252 self.checkJoin(RFC1808_BASE, '../../', 'http://a/')
253 self.checkJoin(RFC1808_BASE, '../../g', 'http://a/g')
256 self.checkJoin(RFC1808_BASE, '', 'http://a/b/c/d;p?q#f')
257 self.checkJoin(RFC1808_BASE, 'g.', 'http://a/b/c/g.')
258 self.checkJoin(RFC1808_BASE, '.g', 'http://a/b/c/.g')
259 self.checkJoin(RFC1808_BASE, 'g..', 'http://a/b/c/g..')
260 self.checkJoin(RFC1808_BASE, '..g', 'http://a/b/c/..g')
261 self.checkJoin(RFC1808_BASE, './../g', 'http://a/b/g')
262 self.checkJoin(RFC1808_BASE, './g/.', 'http://a/b/c/g/')
263 self.checkJoin(RFC1808_BASE, 'g/./h', 'http://a/b/c/g/h')
264 self.checkJoin(RFC1808_BASE, 'g/../h', 'http://a/b/c/h')
268 #self.checkJoin(RFC1808_BASE, 'http:g', 'http:g')
269 #self.checkJoin(RFC1808_BASE, 'http:', 'http:')
272 # self.checkJoin(RFC1808_BASE, '../../../g', 'http://a/../g')
273 # self.checkJoin(RFC1808_BASE, '../../../../g', 'http://a/../../g')
274 # self.checkJoin(RFC1808_BASE, '/./g', 'http://a/./g')
275 # self.checkJoin(RFC1808_BASE, '/../g', 'http://a/../g')
287 self.checkJoin(RFC2396_BASE, 'g', 'http://a/b/c/g')
288 self.checkJoin(RFC2396_BASE, './g', 'http://a/b/c/g')
289 self.checkJoin(RFC2396_BASE, 'g/', 'http://a/b/c/g/')
290 self.checkJoin(RFC2396_BASE, '/g', 'http://a/g')
291 self.checkJoin(RFC2396_BASE, '//g', 'http://g')
292 self.checkJoin(RFC2396_BASE, 'g?y', 'http://a/b/c/g?y')
293 self.checkJoin(RFC2396_BASE, '#s', 'http://a/b/c/d;p?q#s')
294 self.checkJoin(RFC2396_BASE, 'g#s', 'http://a/b/c/g#s')
295 self.checkJoin(RFC2396_BASE, 'g?y#s', 'http://a/b/c/g?y#s')
296 self.checkJoin(RFC2396_BASE, 'g;x', 'http://a/b/c/g;x')
297 self.checkJoin(RFC2396_BASE, 'g;x?y#s', 'http://a/b/c/g;x?y#s')
298 self.checkJoin(RFC2396_BASE, '.', 'http://a/b/c/')
299 self.checkJoin(RFC2396_BASE, './', 'http://a/b/c/')
300 self.checkJoin(RFC2396_BASE, '..', 'http://a/b/')
301 self.checkJoin(RFC2396_BASE, '../', 'http://a/b/')
302 self.checkJoin(RFC2396_BASE, '../g', 'http://a/b/g')
303 self.checkJoin(RFC2396_BASE, '../..', 'http://a/')
304 self.checkJoin(RFC2396_BASE, '../../', 'http://a/')
305 self.checkJoin(RFC2396_BASE, '../../g', 'http://a/g')
307 self.checkJoin(RFC2396_BASE, 'g.', 'http://a/b/c/g.')
308 self.checkJoin(RFC2396_BASE, '.g', 'http://a/b/c/.g')
309 self.checkJoin(RFC2396_BASE, 'g..', 'http://a/b/c/g..')
310 self.checkJoin(RFC2396_BASE, '..g', 'http://a/b/c/..g')
311 self.checkJoin(RFC2396_BASE, './../g', 'http://a/b/g')
312 self.checkJoin(RFC2396_BASE, './g/.', 'http://a/b/c/g/')
313 self.checkJoin(RFC2396_BASE, 'g/./h', 'http://a/b/c/g/h')
314 self.checkJoin(RFC2396_BASE, 'g/../h', 'http://a/b/c/h')
315 self.checkJoin(RFC2396_BASE, 'g;x=1/./y', 'http://a/b/c/g;x=1/y')
316 self.checkJoin(RFC2396_BASE, 'g;x=1/../y', 'http://a/b/c/y')
317 self.checkJoin(RFC2396_BASE, 'g?y/./x', 'http://a/b/c/g?y/./x')
318 self.checkJoin(RFC2396_BASE, 'g?y/../x', 'http://a/b/c/g?y/../x')
319 self.checkJoin(RFC2396_BASE, 'g#s/./x', 'http://a/b/c/g#s/./x')
320 self.checkJoin(RFC2396_BASE, 'g#s/../x', 'http://a/b/c/g#s/../x')
323 # self.checkJoin(RFC2396_BASE, '../../../g', 'http://a/../g')
324 # self.checkJoin(RFC2396_BASE, '../../../../g', 'http://a/../../g')
325 # self.checkJoin(RFC2396_BASE, '/./g', 'http://a/./g')
326 # self.checkJoin(RFC2396_BASE, '/../g', 'http://a/../g')
329 self.checkJoin(RFC3986_BASE, '?y','http://a/b/c/d;p?y')
330 self.checkJoin(RFC3986_BASE, ';x', 'http://a/b/c/;x')
332 self.checkJoin(RFC3986_BASE, 'g','http://a/b/c/g')
333 self.checkJoin(RFC3986_BASE, './g','http://a/b/c/g')
334 self.checkJoin(RFC3986_BASE, 'g/','http://a/b/c/g/')
335 self.checkJoin(RFC3986_BASE, '/g','http://a/g')
336 self.checkJoin(RFC3986_BASE, '//g','http://g')
337 self.checkJoin(RFC3986_BASE, '?y','http://a/b/c/d;p?y')
338 self.checkJoin(RFC3986_BASE, 'g?y','http://a/b/c/g?y')
339 self.checkJoin(RFC3986_BASE, '#s','http://a/b/c/d;p?q#s')
340 self.checkJoin(RFC3986_BASE, 'g#s','http://a/b/c/g#s')
341 self.checkJoin(RFC3986_BASE, 'g?y#s','http://a/b/c/g?y#s')
342 self.checkJoin(RFC3986_BASE, ';x','http://a/b/c/;x')
343 self.checkJoin(RFC3986_BASE, 'g;x','http://a/b/c/g;x')
344 self.checkJoin(RFC3986_BASE, 'g;x?y#s','http://a/b/c/g;x?y#s')
345 self.checkJoin(RFC3986_BASE, '','http://a/b/c/d;p?q')
346 self.checkJoin(RFC3986_BASE, '.','http://a/b/c/')
347 self.checkJoin(RFC3986_BASE, './','http://a/b/c/')
348 self.checkJoin(RFC3986_BASE, '..','http://a/b/')
349 self.checkJoin(RFC3986_BASE, '../','http://a/b/')
350 self.checkJoin(RFC3986_BASE, '../g','http://a/b/g')
351 self.checkJoin(RFC3986_BASE, '../..','http://a/')
352 self.checkJoin(RFC3986_BASE, '../../','http://a/')
353 self.checkJoin(RFC3986_BASE, '../../g','http://a/g')
354 self.checkJoin(RFC3986_BASE, '../../../g', 'http://a/g')
361 self.checkJoin(RFC3986_BASE, '../../../g','http://a/g')
362 self.checkJoin(RFC3986_BASE, '../../../../g','http://a/g')
363 self.checkJoin(RFC3986_BASE, '/./g','http://a/g')
364 self.checkJoin(RFC3986_BASE, '/../g','http://a/g')
365 self.checkJoin(RFC3986_BASE, 'g.','http://a/b/c/g.')
366 self.checkJoin(RFC3986_BASE, '.g','http://a/b/c/.g')
367 self.checkJoin(RFC3986_BASE, 'g..','http://a/b/c/g..')
368 self.checkJoin(RFC3986_BASE, '..g','http://a/b/c/..g')
369 self.checkJoin(RFC3986_BASE, './../g','http://a/b/g')
370 self.checkJoin(RFC3986_BASE, './g/.','http://a/b/c/g/')
371 self.checkJoin(RFC3986_BASE, 'g/./h','http://a/b/c/g/h')
372 self.checkJoin(RFC3986_BASE, 'g/../h','http://a/b/c/h')
373 self.checkJoin(RFC3986_BASE, 'g;x=1/./y','http://a/b/c/g;x=1/y')
374 self.checkJoin(RFC3986_BASE, 'g;x=1/../y','http://a/b/c/y')
375 self.checkJoin(RFC3986_BASE, 'g?y/./x','http://a/b/c/g?y/./x')
376 self.checkJoin(RFC3986_BASE, 'g?y/../x','http://a/b/c/g?y/../x')
377 self.checkJoin(RFC3986_BASE, 'g#s/./x','http://a/b/c/g#s/./x')
378 self.checkJoin(RFC3986_BASE, 'g#s/../x','http://a/b/c/g#s/../x')
379 #self.checkJoin(RFC3986_BASE, 'http:g','http:g') # strict parser
380 self.checkJoin(RFC3986_BASE, 'http:g','http://a/b/c/g') #relaxed parser
383 self.checkJoin('http://a/b/c/de', ';x','http://a/b/c/;x')
387 self.checkJoin(SIMPLE_BASE, 'http:g','http://a/b/c/g')
388 self.checkJoin(SIMPLE_BASE, 'http:','http://a/b/c/d')
389 self.checkJoin(SIMPLE_BASE, 'g','http://a/b/c/g')
390 self.checkJoin(SIMPLE_BASE, './g','http://a/b/c/g')
391 self.checkJoin(SIMPLE_BASE, 'g/','http://a/b/c/g/')
392 self.checkJoin(SIMPLE_BASE, '/g','http://a/g')
393 self.checkJoin(SIMPLE_BASE, '//g','http://g')
394 self.checkJoin(SIMPLE_BASE, '?y','http://a/b/c/d?y')
395 self.checkJoin(SIMPLE_BASE, 'g?y','http://a/b/c/g?y')
396 self.checkJoin(SIMPLE_BASE, 'g?y/./x','http://a/b/c/g?y/./x')
397 self.checkJoin(SIMPLE_BASE, '.','http://a/b/c/')
398 self.checkJoin(SIMPLE_BASE, './','http://a/b/c/')
399 self.checkJoin(SIMPLE_BASE, '..','http://a/b/')
400 self.checkJoin(SIMPLE_BASE, '../','http://a/b/')
401 self.checkJoin(SIMPLE_BASE, '../g','http://a/b/g')
402 self.checkJoin(SIMPLE_BASE, '../..','http://a/')
403 self.checkJoin(SIMPLE_BASE, '../../g','http://a/g')
404 self.checkJoin(SIMPLE_BASE, './../g','http://a/b/g')
405 self.checkJoin(SIMPLE_BASE, './g/.','http://a/b/c/g/')
406 self.checkJoin(SIMPLE_BASE, 'g/./h','http://a/b/c/g/h')
407 self.checkJoin(SIMPLE_BASE, 'g/../h','http://a/b/c/h')
408 self.checkJoin(SIMPLE_BASE, 'http:g','http://a/b/c/g')
409 self.checkJoin(SIMPLE_BASE, 'http:','http://a/b/c/d')
410 self.checkJoin(SIMPLE_BASE, 'http:?y','http://a/b/c/d?y')
411 self.checkJoin(SIMPLE_BASE, 'http:g?y','http://a/b/c/g?y')
412 self.checkJoin(SIMPLE_BASE, 'http:g?y/./x','http://a/b/c/g?y/./x')
413 self.checkJoin('http:///', '..','http:///')
414 self.checkJoin('', 'http://a/b/c/g?y/./x','http://a/b/c/g?y/./x')
415 self.checkJoin('', 'http://a/./g', 'http://a/./g')
422 # self.checkJoin(SIMPLE_BASE, '../../../g','http://a/../g')
423 # self.checkJoin(SIMPLE_BASE, '/./g','http://a/./g')
430 self.checkJoin('http://a/b/c/d/e/', '../../f/g/', 'http://a/b/c/f/g/')
431 self.checkJoin('http://a/b/c/d/e', '../../f/g/', 'http://a/b/f/g/')
432 self.checkJoin('http://a/b/c/d/e/', '/../../f/g/', 'http://a/f/g/')
433 self.checkJoin('http://a/b/c/d/e', '/../../f/g/', 'http://a/f/g/')
434 self.checkJoin('http://a/b/c/d/e/', '../../f/g', 'http://a/b/c/f/g')
435 self.checkJoin('http://a/b/', '../../f/g/', 'http://a/f/g/')
442 ('http://Test.python.org:5432/foo/', 'test.python.org', 5432),
443 ('http://12.34.56.78:5432/foo/', '12.34.56.78', 5432),
444 ('http://[::1]:5432/foo/', '::1', 5432),
445 ('http://[dead:beef::1]:5432/foo/', 'dead:beef::1', 5432),
446 ('http://[dead:beef::]:5432/foo/', 'dead:beef::', 5432),
447 ('http://[dead:beef:cafe:5417:affe:8FA3:deaf:feed]:5432/foo/',
449 ('http://[::12.34.56.78]:5432/foo/', '::12.34.56.78', 5432),
450 ('http://[::ffff:12.34.56.78]:5432/foo/',
452 ('http://Test.python.org/foo/', 'test.python.org', None),
453 ('http://12.34.56.78/foo/', '12.34.56.78', None),
454 ('http://[::1]/foo/', '::1', None),
455 ('http://[dead:beef::1]/foo/', 'dead:beef::1', None),
456 ('http://[dead:beef::]/foo/', 'dead:beef::', None),
457 ('http://[dead:beef:cafe:5417:affe:8FA3:deaf:feed]/foo/',
459 ('http://[::12.34.56.78]/foo/', '::12.34.56.78', None),
460 ('http://[::ffff:12.34.56.78]/foo/',
462 ('http://Test.python.org:/foo/', 'test.python.org', None),
463 ('http://12.34.56.78:/foo/', '12.34.56.78', None),
464 ('http://[::1]:/foo/', '::1', None),
465 ('http://[dead:beef::1]:/foo/', 'dead:beef::1', None),
466 ('http://[dead:beef::]:/foo/', 'dead:beef::', None),
467 ('http://[dead:beef:cafe:5417:affe:8FA3:deaf:feed]:/foo/',
469 ('http://[::12.34.56.78]:/foo/', '::12.34.56.78', None),
470 ('http://[::ffff:12.34.56.78]:/foo/',
481 'http://::12.34.56.78]/',
482 'http://[::1/foo/',
484 'http://[::1/foo/bad]/bad',
485 'http://[::ffff:12.34.56.78']
492 ('http://python.org#frag', 'http://python.org', 'frag'),
493 ('http://python.org', 'http://python.org', ''),
494 ('http://python.org/#frag', 'http://python.org/', 'frag'),
495 ('http://python.org/', 'http://python.org/', ''),
496 ('http://python.org/?q#frag', 'http://python.org/?q', 'frag'),
497 ('http://python.org/?q', 'http://python.org/?q', ''),
498 ('http://python.org/p#frag', 'http://python.org/p', 'frag'),
499 ('http://python.org/p?q', 'http://python.org/p?q', ''),
500 (RFC1808_BASE, 'http://a/b/c/d;p?q', 'f'),
501 (RFC2396_BASE, 'http://a/b/c/d;p?q', ''),
514 p = urllib.parse.urlsplit('http://[FE80::822a:a8ff:fe49:470c%tESt]:1234')
518 p = urllib.parse.urlsplit(b'http://[FE80::822a:a8ff:fe49:470c%tESt]:1234')
523 url = "HTTP://WWW.PYTHON.ORG/doc/#frag"
525 self.assertEqual(p.scheme, "http")
539 url = "http://User:Pass@www.python.org:080/doc/?query=yes#frag"
541 self.assertEqual(p.scheme, "http")
556 url = "http://User@example.com:Pass@www.python.org:080/doc/?query=yes#frag"
558 self.assertEqual(p.scheme, "http")
570 url = b"HTTP://WWW.PYTHON.ORG/doc/#frag"
572 self.assertEqual(p.scheme, b"http")
583 url = b"http://User:Pass@www.python.org:080/doc/?query=yes#frag"
585 self.assertEqual(p.scheme, b"http")
596 url = b"http://User@example.com:Pass@www.python.org:080/doc/?query=yes#frag"
598 self.assertEqual(p.scheme, b"http")
610 url = b"HTTP://WWW.PYTHON.ORG:65536/doc/#frag"
617 …url = "http\t://www.python\n.org\t/java\nscript:\talert('msg\r\n')/?query\n=\tsomething#frag\nment"
619 self.assertEqual(p.scheme, "http")
628 …self.assertEqual(p.geturl(), "http://www.python.org/javascript:alert('msg')/?query=something#fragm…
631 …url = b"http\t://www.python\n.org\t/java\nscript:\talert('msg\r\n')/?query\n=\tsomething#frag\nmen…
633 self.assertEqual(p.scheme, b"http")
642 …self.assertEqual(p.geturl(), b"http://www.python.org/javascript:alert('msg')/?query=something#frag…
645 … url = "http://www.python.org/java\nscript:\talert('msg\r\n')/?query\n=\tsomething#frag\nment"
649 self.assertEqual(p.scheme, "http")
650 …self.assertEqual(p.geturl(), "http://www.python.org/javascript:alert('msg')/?query=something#fragm…
654 base_url = "http://User:Pass@www.python.org:080/doc/?query=yes#frag"
658 self.assertEqual(p.scheme, "http")
671 self.assertEqual(p.scheme, b"http")
718 url = "http://" + netloc + "/"
734 for scheme in (".", "+", "-", "0", "http&", "६http"):
790 # Issue 1637: http://foo.com?query is legal
791 self.assertEqual(urllib.parse.urlparse("http://example.com?blahblah=/foo"),
792 ('http', 'example.com', '', '', 'blahblah=/foo', ''))
793 self.assertEqual(urllib.parse.urlparse(b"http://example.com?blahblah=/foo"),
794 (b'http', b'example.com', b'', b'', b'blahblah=/foo', b''))
805 self.assertEqual(urllib.parse.urlparse("http://www.python.org:80"),
806 ('http','www.python.org:80','','','',''))
812 self.assertEqual(urllib.parse.urlparse(b"http://www.python.org:80"),
813 (b'http',b'www.python.org:80',b'',b'',b'',b''))
817 self.assertEqual(urllib.parse.urlparse("http:80"), ('http','','80','','',''))
820 self.assertEqual(urllib.parse.urlparse("http:"),('http','','','','',''))
822 self.assertEqual(urllib.parse.urlparse("http://www.python.org:80"),
823 ('http','www.python.org:80','','','',''))
825 self.assertEqual(urllib.parse.urlparse(b"http:80"), (b'http',b'',b'80',b'',b'',b''))
828 self.assertEqual(urllib.parse.urlparse(b"http:"),(b'http',b'',b'',b'',b'',b''))
830 self.assertEqual(urllib.parse.urlparse(b"http://www.python.org:80"),
831 (b'http',b'www.python.org:80',b'',b'',b'',b''))
862 result = func("http://example.net/", "ftp")
863 self.assertEqual(result.scheme, "http")
864 result = func(b"http://example.net/", b"ftp")
865 self.assertEqual(result.scheme, b"http")
876 ("http:#frag", "path", "frag"),
910 urllib.parse.urlparse("www.python.org", b"http")
912 urllib.parse.urlparse(b"www.python.org", "http")
914 urllib.parse.urlsplit("www.python.org", b"http")
916 urllib.parse.urlsplit(b"www.python.org", "http")
918 urllib.parse.urlunparse(( b"http", "www.python.org","","","",""))
920 urllib.parse.urlunparse(("http", b"www.python.org","","","",""))
922 urllib.parse.urlunsplit((b"http", "www.python.org","","",""))
924 urllib.parse.urlunsplit(("http", b"www.python.org","","",""))
926 urllib.parse.urljoin("http://python.org", b"http://python.org")
928 urllib.parse.urljoin(b"http://python.org", "http://python.org")
1123 p1 = urllib.parse.urlparse('http://Server=sde; Service=sde:oracle')
1127 p2 = urllib.parse.urlsplit('http://Server=sde; Service=sde:oracle')
1198 urllib.parse.urlsplit('http://\u30d5\u309a:80')
1200 urllib.parse.urlsplit('http://\u30d5\u309a\ufe1380')
1202 for scheme in ["http", "https", "ftp"]:
1310 self.assertEqual(splitquery('http://python.org/fake?foo=bar'),
1311 ('http://python.org/fake', 'foo=bar'))
1312 self.assertEqual(splitquery('http://python.org/fake?foo=bar?'),
1313 ('http://python.org/fake?foo=bar', ''))
1314 self.assertEqual(splitquery('http://python.org/fake'),
1315 ('http://python.org/fake', None))
1320 self.assertEqual(splittag('http://example.com?foo=bar#baz'),
1321 ('http://example.com?foo=bar', 'baz'))
1322 self.assertEqual(splittag('http://example.com?foo=bar#'),
1323 ('http://example.com?foo=bar', ''))
1325 self.assertEqual(splittag('http://example.com?foo=bar'),
1326 ('http://example.com?foo=bar', None))
1327 self.assertEqual(splittag('http://example.com?foo=bar#baz#boo'),
1328 ('http://example.com?foo=bar#baz', 'boo'))
1350 result = urllib.parse._to_bytes('http://www.python.org')
1351 self.assertEqual(result, 'http://www.python.org')
1353 'http://www.python.org/medi\u00e6val')