/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to breezy/tests/test_directory_service.py

  • Committer: Jelmer Vernooij
  • Date: 2019-03-04 05:10:44 UTC
  • mfrom: (7293 work)
  • mto: This revision was merged to the branch mainline in revision 7294.
  • Revision ID: jelmer@jelmer.uk-20190304051044-vph4s8p9qvpy2qe9
Merge trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
36
36
    # eg 'file:///foo' on Unix, or 'file:///C:/foo' on Windows
37
37
    base = urlutils.local_path_to_url('/foo')
38
38
 
39
 
    def look_up(self, name, url):
 
39
    def look_up(self, name, url, purpose=None):
40
40
        return self.base + name
41
41
 
42
42
 
55
55
    def test_dereference(self):
56
56
        self.assertEqual(FooService.base + 'bar',
57
57
                         self.registry.dereference('foo:bar'))
 
58
        self.assertEqual(FooService.base + 'bar',
 
59
                         self.registry.dereference('foo:bar', purpose='write'))
58
60
        self.assertEqual('baz:qux', self.registry.dereference('baz:qux'))
 
61
        self.assertEqual(
 
62
            'baz:qux',
 
63
            self.registry.dereference('baz:qux', purpose='write'))
59
64
 
60
65
    def test_get_transport(self):
61
66
        directories.register('foo:', FooService, 'Map foo URLs to http urls')
64
69
                         transport.get_transport('foo:bar').base)
65
70
 
66
71
 
 
72
class OldService(object):
 
73
    """A directory service that maps the name to a FILE url"""
 
74
 
 
75
    # eg 'file:///foo' on Unix, or 'file:///C:/foo' on Windows
 
76
    base = urlutils.local_path_to_url('/foo')
 
77
 
 
78
    def look_up(self, name, url):
 
79
        return self.base + name
 
80
 
 
81
 
 
82
class TestOldDirectoryLookup(TestCase):
 
83
    """Test compatibility with older implementations of Directory
 
84
    that don't support the purpose argument."""
 
85
 
 
86
    def setUp(self):
 
87
        super(TestOldDirectoryLookup, self).setUp()
 
88
        self.registry = DirectoryServiceRegistry()
 
89
        self.registry.register('old:', OldService, 'Map foo URLs to http urls')
 
90
 
 
91
    def test_dereference(self):
 
92
        self.assertEqual(OldService.base + 'bar',
 
93
                         self.registry.dereference('old:bar'))
 
94
        self.assertEqual(OldService.base + 'bar',
 
95
                         self.registry.dereference('old:bar', purpose='write'))
 
96
        self.assertEqual('baz:qux', self.registry.dereference('baz:qux'))
 
97
        self.assertEqual(
 
98
            'baz:qux',
 
99
            self.registry.dereference('baz:qux', purpose='write'))
 
100
 
 
101
 
67
102
class TestAliasDirectory(TestCaseWithTransport):
68
103
 
69
104
    def setUp(self):