~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_urlutils.py

  • Committer: Jelmer Vernooij
  • Date: 2010-04-29 23:19:16 UTC
  • mto: This revision was merged to the branch mainline in revision 5267.
  • Revision ID: jelmer@samba.org-20100429231916-wn84nn6tvwy5vk5t
Add join_segment_parameters / split_segment_parameters.

Show diffs side-by-side

added added

removed removed

Lines of Context:
281
281
        self.assertEquals("/somedir/path,bla,bar",
282
282
            join_subsegments("/somedir/path", "bla", "bar"))
283
283
 
 
284
    def test_join_segment_parameters(self):
 
285
        join_segment_parameters = urlutils.join_segment_parameters
 
286
        self.assertEquals("/somedir/path", 
 
287
            join_segment_parameters("/somedir/path", {}))
 
288
        self.assertEquals("/somedir/path,branch=brrr", 
 
289
            join_segment_parameters("/somedir/path", {"branch": "brrr"}))
 
290
        self.assertRaises(InvalidURLJoin,
 
291
            join_segment_parameters, "/somedir/path",
 
292
            {"branch": "brr,brr,brr"})
 
293
        self.assertRaises(InvalidURLJoin,
 
294
            join_segment_parameters, "/somedir/path", {"branch=bla": "brr"})
 
295
        self.assertEquals("/somedir/path,bla=bar,branch=bla",
 
296
            join_segment_parameters("/somedir/path", {
 
297
                "branch": "bla", "bla": "bar"}))
 
298
 
284
299
    def test_function_type(self):
285
300
        if sys.platform == 'win32':
286
301
            self.assertEqual(urlutils._win32_local_path_to_url, urlutils.local_path_to_url)
436
451
        self.assertEquals(("/somedir/path", ["heads%2Ftip", "bar"]),
437
452
            split_subsegments("/somedir/path,heads%2Ftip,bar"))
438
453
 
 
454
    def test_split_segment_parameters(self):
 
455
        split_segment_parameters = urlutils.split_segment_parameters
 
456
        self.assertEquals(("/some/path", {}),
 
457
            split_segment_parameters("/some/path"))
 
458
        self.assertEquals(("/some/path", {"branch": "tip"}),
 
459
            split_segment_parameters("/some/path,branch=tip"))
 
460
        self.assertEquals(("/some,dir/path", {"branch": "tip"}),
 
461
            split_segment_parameters("/some,dir/path,branch=tip"))
 
462
        self.assertEquals(("/somedir/path", {"ref": "heads%2Ftip"}),
 
463
            split_segment_parameters("/somedir/path,ref=heads%2Ftip"))
 
464
        self.assertEquals(("/somedir/path",
 
465
            {"ref": "heads%2Ftip", "bla": "bar"}),
 
466
            split_segment_parameters("/somedir/path,ref=heads%2Ftip,bla=bar"))
 
467
        self.assertEquals(("/somedir/path", {"ref": "heads%2F=tip"}),
 
468
            split_segment_parameters("/somedir/path,ref=heads%2F=tip"))
 
469
 
439
470
    def test_win32_strip_local_trailing_slash(self):
440
471
        strip = urlutils._win32_strip_local_trailing_slash
441
472
        self.assertEqual('file://', strip('file://'))