コード例 #1
0
ファイル: base.py プロジェクト: jelmer/breezy-svn
 def parse_file_id(self, file_id):
     try:
         (revnum_str, rest) = file_id.split("@", 1)
         revnum = int(revnum_str)
         (uuid, bp, ip) = rest.split(":", 2)
     except ValueError:
         raise errors.InvalidFileId(file_id)
     return (uuid, revnum,
             (u"%s/%s" % (mapping.unescape_svn_path(bp),
                          mapping.unescape_svn_path(ip))).strip(u"/"))
コード例 #2
0
ファイル: mapping4.py プロジェクト: jelmer/breezy-svn
 def parse_file_id(self, fileid):
     try:
         (revnum_str, rest) = fileid.split("@", 1)
         revnum = int(revnum_str)
         (uuid, path_escaped) = rest.split(":", 1)
     except ValueError:
         raise InvalidFileId(fileid)
     path = mapping.unescape_svn_path(path_escaped).strip("/")
     return (uuid, revnum, path)
コード例 #3
0
ファイル: mapping4.py プロジェクト: jelmer/breezy-svn
    def revision_id_bzr_to_foreign(cls, revid):
        assert isinstance(revid, str)

        if not revid.startswith(cls.revid_prefix):
            raise errors.InvalidRevisionId(revid, "")

        try:
            (version, uuid, branch_path, srevnum) = revid.split(":")
        except ValueError:
            raise errors.InvalidRevisionId(revid, "")

        branch_path = mapping.unescape_svn_path(branch_path)

        return (uuid, branch_path, int(srevnum)), cls()
コード例 #4
0
ファイル: base.py プロジェクト: jelmer/breezy-svn
    def _parse_revision_id(cls, revid):
        if not isinstance(revid, bytes):
            raise TypeError(revid)

        if not revid.startswith(cls.revid_prefix):
            raise bzr_errors.InvalidRevisionId(revid, "")

        try:
            (version, uuid, branch_path, srevnum) = revid.split(":")
        except ValueError:
            raise bzr_errors.InvalidRevisionId(revid, "")

        scheme = version[len(cls.revid_prefix):]

        branch_path = mapping.unescape_svn_path(branch_path)

        return (uuid, branch_path, int(srevnum), scheme)
コード例 #5
0
ファイル: test_mapping.py プロジェクト: jelmer/breezy-svn
 def test_unescape_svn_path_percent(self):
     self.assertEqual("foobar%b", unescape_svn_path(u"foobar%25b"))
コード例 #6
0
ファイル: test_mapping.py プロジェクト: jelmer/breezy-svn
 def test_unescape_svn_path_none(self):
     self.assertEqual("foobar", unescape_svn_path(u"foobar"))
コード例 #7
0
ファイル: test_mapping.py プロジェクト: jelmer/breezy-svn
 def test_unescape_svn_path_slash(self):
     self.assertEqual("foobar/", unescape_svn_path(u"foobar%2F"))