784
784
def test_parse_url(self):
785
785
t = transport.ConnectedTransport(
786
786
'http://simple.example.com/home/source')
787
self.assertEquals(t._host, 'simple.example.com')
788
self.assertEquals(t._port, None)
789
self.assertEquals(t._path, '/home/source/')
790
self.assertTrue(t._user is None)
791
self.assertTrue(t._password is None)
787
self.assertEquals(t._parsed_url.host, 'simple.example.com')
788
self.assertEquals(t._parsed_url.port, None)
789
self.assertEquals(t._parsed_url.path, '/home/source/')
790
self.assertTrue(t._parsed_url.user is None)
791
self.assertTrue(t._parsed_url.password is None)
793
793
self.assertEquals(t.base, 'http://simple.example.com/home/source/')
795
795
def test_parse_url_with_at_in_user(self):
797
797
t = transport.ConnectedTransport('ftp://user@host.com@www.host.com/')
798
self.assertEquals(t._user, 'user@host.com')
798
self.assertEquals(t._parsed_url.user, 'user@host.com')
800
800
def test_parse_quoted_url(self):
801
801
t = transport.ConnectedTransport(
802
802
'http://ro%62ey:h%40t@ex%41mple.com:2222/path')
803
self.assertEquals(t._host, 'exAmple.com')
804
self.assertEquals(t._port, 2222)
805
self.assertEquals(t._user, 'robey')
806
self.assertEquals(t._password, 'h@t')
807
self.assertEquals(t._path, '/path/')
803
self.assertEquals(t._parsed_url.host, 'exAmple.com')
804
self.assertEquals(t._parsed_url.port, 2222)
805
self.assertEquals(t._parsed_url.user, 'robey')
806
self.assertEquals(t._parsed_url.password, 'h@t')
807
self.assertEquals(t._parsed_url.path, '/path/')
809
809
# Base should not keep track of the password
810
810
self.assertEquals(t.base, 'http://robey@exAmple.com:2222/path/')
838
838
def test_connection_sharing_propagate_credentials(self):
839
839
t = transport.ConnectedTransport('ftp://user@host.com/abs/path')
840
self.assertEquals('user', t._user)
841
self.assertEquals('host.com', t._host)
840
self.assertEquals('user', t._parsed_url.user)
841
self.assertEquals('host.com', t._parsed_url.host)
842
842
self.assertIs(None, t._get_connection())
843
self.assertIs(None, t._password)
843
self.assertIs(None, t._parsed_url.password)
844
844
c = t.clone('subdir')
845
845
self.assertIs(None, c._get_connection())
846
self.assertIs(None, t._password)
846
self.assertIs(None, t._parsed_url.password)
848
848
# Simulate the user entering a password
849
849
password = 'secret'