~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_urlutils.py

  • Committer: paulbrianstewart at gmail
  • Date: 2011-08-13 23:07:36 UTC
  • mto: This revision was merged to the branch mainline in revision 6069.
  • Revision ID: paulbrianstewart@gmail.com-20110813230736-lqi6eek015wh23yv
Added punctuation to the commit message

Show diffs side-by-side

added added

removed removed

Lines of Context:
793
793
 
794
794
class TestParseURL(TestCase):
795
795
 
796
 
    def test_parse_simple(self):
797
 
        parsed = urlutils.parse_url('http://example.com:80/one')
798
 
        self.assertEquals(('http', None, None, 'example.com', 80, '/one'),
799
 
            parsed)
800
 
 
801
 
    def test_ipv6(self):
802
 
        parsed = urlutils.parse_url('http://[1:2:3::40]/one')
803
 
        self.assertEquals(('http', None, None, '1:2:3::40', None, '/one'),
804
 
            parsed)
805
 
 
806
 
    def test_ipv6_port(self):
807
 
        parsed = urlutils.parse_url('http://[1:2:3::40]:80/one')
808
 
        self.assertEquals(('http', None, None, '1:2:3::40', 80, '/one'),
809
 
            parsed)
810
 
 
811
 
 
812
 
class TestURL(TestCase):
813
 
 
814
 
    def test_parse_simple(self):
815
 
        parsed = urlutils.URL.from_string('http://example.com:80/one')
816
 
        self.assertEquals('http', parsed.scheme)
817
 
        self.assertIs(None, parsed.user)
818
 
        self.assertIs(None, parsed.password)
819
 
        self.assertEquals('example.com', parsed.host)
820
 
        self.assertEquals(80, parsed.port)
821
 
        self.assertEquals('/one', parsed.path)
822
 
 
823
 
    def test_ipv6(self):
824
 
        parsed = urlutils.URL.from_string('http://[1:2:3::40]/one')
825
 
        self.assertEquals('http', parsed.scheme)
826
 
        self.assertIs(None, parsed.port)
827
 
        self.assertIs(None, parsed.user)
828
 
        self.assertIs(None, parsed.password)
829
 
        self.assertEquals('1:2:3::40', parsed.host)
830
 
        self.assertEquals('/one', parsed.path)
831
 
 
832
 
    def test_ipv6_port(self):
833
 
        parsed = urlutils.URL.from_string('http://[1:2:3::40]:80/one')
834
 
        self.assertEquals('http', parsed.scheme)
835
 
        self.assertEquals('1:2:3::40', parsed.host)
836
 
        self.assertIs(None, parsed.user)
837
 
        self.assertIs(None, parsed.password)
838
 
        self.assertEquals(80, parsed.port)
839
 
        self.assertEquals('/one', parsed.path)
840
 
 
841
 
    def test_quoted(self):
842
 
        parsed = urlutils.URL.from_string(
843
 
            'http://ro%62ey:h%40t@ex%41mple.com:2222/path')
844
 
        self.assertEquals(parsed.quoted_host, 'ex%41mple.com')
845
 
        self.assertEquals(parsed.host, 'exAmple.com')
846
 
        self.assertEquals(parsed.port, 2222)
847
 
        self.assertEquals(parsed.quoted_user, 'ro%62ey')
848
 
        self.assertEquals(parsed.user, 'robey')
849
 
        self.assertEquals(parsed.quoted_password, 'h%40t')
850
 
        self.assertEquals(parsed.password, 'h@t')
851
 
        self.assertEquals(parsed.path, '/path')
852
 
 
853
 
    def test_eq(self):
854
 
        parsed1 = urlutils.URL.from_string('http://[1:2:3::40]:80/one')
855
 
        parsed2 = urlutils.URL.from_string('http://[1:2:3::40]:80/one')
856
 
        self.assertEquals(parsed1, parsed2)
857
 
        self.assertEquals(parsed1, parsed1)
858
 
        parsed2.path = '/two'
859
 
        self.assertNotEquals(parsed1, parsed2)
860
 
 
861
 
    def test_repr(self):
862
 
        parsed = urlutils.URL.from_string('http://[1:2:3::40]:80/one')
863
 
        self.assertEquals(
864
 
            "<URL('http', None, None, '1:2:3::40', 80, '/one')>",
865
 
            repr(parsed))
866
 
 
867
 
    def test_str(self):
868
 
        parsed = urlutils.URL.from_string('http://[1:2:3::40]:80/one')
869
 
        self.assertEquals('http://[1:2:3::40]:80/one', str(parsed))
870
 
 
871
 
    def test__combine_paths(self):
872
 
        combine = urlutils.URL._combine_paths
873
 
        self.assertEqual('/home/sarah/project/foo',
874
 
                         combine('/home/sarah', 'project/foo'))
875
 
        self.assertEqual('/etc',
876
 
                         combine('/home/sarah', '../../etc'))
877
 
        self.assertEqual('/etc',
878
 
                         combine('/home/sarah', '../../../etc'))
879
 
        self.assertEqual('/etc',
880
 
                         combine('/home/sarah', '/etc'))
881
 
 
882
 
    def test_clone(self):
883
 
        url = urlutils.URL.from_string('http://[1:2:3::40]:80/one')
884
 
        url1 = url.clone("two")
885
 
        self.assertEquals("/one/two", url1.path)
886
 
        url2 = url.clone("/two")
887
 
        self.assertEquals("/two", url2.path)
888
 
        url3 = url.clone()
889
 
        self.assertIsNot(url, url3)
890
 
        self.assertEquals(url, url3)
 
796
    def test_parse_url(self):
 
797
        self.assertEqual(urlutils.parse_url('http://example.com:80/one'),
 
798
            ('http', None, None, 'example.com', 80, '/one'))
 
799
        self.assertEqual(urlutils.parse_url('http://[1:2:3::40]/one'),
 
800
                ('http', None, None, '1:2:3::40', None, '/one'))
 
801
        self.assertEqual(urlutils.parse_url('http://[1:2:3::40]:80/one'),
 
802
                ('http', None, None, '1:2:3::40', 80, '/one'))