cpython: d002a2e46383 (original) (raw)
Mercurial > cpython
changeset 81024:d002a2e46383 3.2
Fix issue16713 - tel url parsing with params [#16713]
Senthil Kumaran senthil@uthcode.com | |
---|---|
date | Mon, 24 Dec 2012 14:00:20 -0800 |
parents | 0cc4fe5634cf |
children | 727f26d1806f c3acc5ead883 |
files | Lib/test/test_urlparse.py Lib/urllib/parse.py Misc/NEWS |
diffstat | 3 files changed, 33 insertions(+), 1 deletions(-)[+] [-] Lib/test/test_urlparse.py 29 Lib/urllib/parse.py 2 Misc/NEWS 3 |
line wrap: on
line diff
--- a/Lib/test/test_urlparse.py +++ b/Lib/test/test_urlparse.py @@ -818,6 +818,35 @@ class UrlParseTestCase(unittest.TestCase p2 = urllib.parse.urlsplit('tel:+31641044153') self.assertEqual(p2.scheme, 'tel') self.assertEqual(p2.path, '+31641044153')
# assert the behavior for urlparse[](#l1.7)
p1 = urllib.parse.urlparse('tel:+31-641044153')[](#l1.8)
self.assertEqual(p1.scheme, 'tel')[](#l1.9)
self.assertEqual(p1.path, '+31-641044153')[](#l1.10)
p2 = urllib.parse.urlparse('tel:+31641044153')[](#l1.11)
self.assertEqual(p2.scheme, 'tel')[](#l1.12)
self.assertEqual(p2.path, '+31641044153')[](#l1.13)
- def test_telurl_params(self):
p1 = urllib.parse.urlparse('tel:123-4;phone-context=+1-650-516')[](#l1.16)
self.assertEqual(p1.scheme, 'tel')[](#l1.17)
self.assertEqual(p1.path, '123-4')[](#l1.18)
self.assertEqual(p1.params, 'phone-context=+1-650-516')[](#l1.19)
p1 = urllib.parse.urlparse('tel:+1-201-555-0123')[](#l1.21)
self.assertEqual(p1.scheme, 'tel')[](#l1.22)
self.assertEqual(p1.path, '+1-201-555-0123')[](#l1.23)
self.assertEqual(p1.params, '')[](#l1.24)
p1 = urllib.parse.urlparse('tel:7042;phone-context=example.com')[](#l1.26)
self.assertEqual(p1.scheme, 'tel')[](#l1.27)
self.assertEqual(p1.path, '7042')[](#l1.28)
self.assertEqual(p1.params, 'phone-context=example.com')[](#l1.29)
p1 = urllib.parse.urlparse('tel:863-1234;phone-context=+1-914-555')[](#l1.31)
self.assertEqual(p1.scheme, 'tel')[](#l1.32)
self.assertEqual(p1.path, '863-1234')[](#l1.33)
self.assertEqual(p1.params, 'phone-context=+1-914-555')[](#l1.34)
+ def test_main(): support.run_unittest(UrlParseTestCase)
--- a/Lib/urllib/parse.py +++ b/Lib/urllib/parse.py @@ -46,7 +46,7 @@ uses_netloc = ['ftp', 'http', 'gopher', 'svn', 'svn+ssh', 'sftp', 'nfs', 'git', 'git+ssh'] uses_params = ['ftp', 'hdl', 'prospero', 'http', 'imap', 'https', 'shttp', 'rtsp', 'rtspu', 'sip', 'sips',
'mms', '', 'sftp'][](#l2.7)
'mms', '', 'sftp', 'tel'][](#l2.8)