~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/__init__.py

Convert test_open_containing from being a Remote test to being the more accurate Chrooted test.

Show diffs side-by-side

added added

removed removed

Lines of Context:
651
651
        self.__readonly_server = None
652
652
        self.__server = None
653
653
 
654
 
    def get_readonly_url(self):
 
654
    def get_readonly_url(self, relpath=None):
655
655
        """Get a URL for the readonly transport.
656
656
 
657
657
        This will either be backed by '.' or a decorator to the transport 
658
658
        used by self.get_url()
 
659
        relpath provides for clients to get a path relative to the base url.
 
660
        These should only be downwards relative, not upwards.
659
661
        """
660
662
        if self.__readonly_server is None:
661
663
            if self.transport_readonly_server is None:
668
670
                self.__readonly_server = self.transport_readonly_server()
669
671
                self.__readonly_server.setUp()
670
672
            self.addCleanup(self.__readonly_server.tearDown)
671
 
        return self.__readonly_server.get_url()
 
673
        base = self.__readonly_server.get_url()
 
674
        if relpath is not None:
 
675
            if not base.endswith('/'):
 
676
                base = base + '/'
 
677
            base = base + relpath
 
678
        return base
672
679
 
673
 
    def get_url(self):
 
680
    def get_url(self, relpath=None):
674
681
        """Get a URL for the readwrite transport.
675
682
 
676
683
        This will either be backed by '.' or to an equivalent non-file based
677
684
        facility.
 
685
        relpath provides for clients to get a path relative to the base url.
 
686
        These should only be downwards relative, not upwards.
678
687
        """
679
688
        if self.__server is None:
680
689
            self.__server = self.transport_server()
681
690
            self.__server.setUp()
682
691
            self.addCleanup(self.__server.tearDown)
683
 
        return self.__server.get_url()
 
692
        base = self.__server.get_url()
 
693
        if relpath is not None:
 
694
            if not base.endswith('/'):
 
695
                base = base + '/'
 
696
            base = base + relpath
 
697
        return base
 
698
 
684
699
    
685
700
 
686
701