def _parse_refs(self, output): refs = {} for line in BytesIO(output): fields = line.rstrip(b'\n').split(b' ') self.assertEqual(3, len(fields)) refname, type_name, sha = fields check_ref_format(refname[5:]) refs[refname] = (type_name.decode('utf-8'), Sha1Sum(sha)) return refs
def _parse_refs(self, output): refs = {} for line in BytesIO(output): fields = line.rstrip(b"\n").split(b" ") self.assertEqual(3, len(fields)) refname, type_name, sha = fields check_ref_format(refname[5:]) hex_to_sha(sha) refs[refname] = (type_name, sha) return refs
def _parse_refs(self, output): refs = {} for line in BytesIO(output): fields = line.rstrip(b'\n').split(b' ') self.assertEqual(3, len(fields)) refname, type_name, sha = fields check_ref_format(refname[5:]) hex_to_sha(sha) refs[refname] = (type_name, sha) return refs
def test_invalid(self): self.assertFalse(check_ref_format('foo')) self.assertFalse(check_ref_format('heads/foo/')) self.assertFalse(check_ref_format('./foo')) self.assertFalse(check_ref_format('.refs/foo')) self.assertFalse(check_ref_format('heads/foo..bar')) self.assertFalse(check_ref_format('heads/foo?bar')) self.assertFalse(check_ref_format('heads/foo.lock')) self.assertFalse(check_ref_format('heads/v@{ation')) self.assertFalse(check_ref_format('heads/foo\bar'))
def test_invalid(self): self.assertFalse(check_ref_format("foo")) self.assertFalse(check_ref_format("heads/foo/")) self.assertFalse(check_ref_format("./foo")) self.assertFalse(check_ref_format(".refs/foo")) self.assertFalse(check_ref_format("heads/foo..bar")) self.assertFalse(check_ref_format("heads/foo?bar")) self.assertFalse(check_ref_format("heads/foo.lock")) self.assertFalse(check_ref_format("heads/v@{ation")) self.assertFalse(check_ref_format("heads/foo\bar"))
def test_valid(self): self.assertTrue(check_ref_format('heads/foo')) self.assertTrue(check_ref_format('foo/bar/baz')) self.assertTrue(check_ref_format('refs///heads/foo')) self.assertTrue(check_ref_format('foo./bar')) self.assertTrue(check_ref_format('heads/foo@bar')) self.assertTrue(check_ref_format('heads/fix.lock.error'))
def test_valid(self): self.assertTrue(check_ref_format("heads/foo")) self.assertTrue(check_ref_format("foo/bar/baz")) self.assertTrue(check_ref_format("refs///heads/foo")) self.assertTrue(check_ref_format("foo./bar")) self.assertTrue(check_ref_format("heads/foo@bar")) self.assertTrue(check_ref_format("heads/fix.lock.error"))
def allkeys(self): keys = set() try: self.worktree_transport.get_bytes("HEAD") except NoSuchFile: pass else: keys.add(b"HEAD") try: iter_files = list(self.transport.clone( "refs").iter_files_recursive()) for filename in iter_files: unquoted_filename = urlutils.unquote_to_bytes(filename) refname = osutils.pathjoin(b"refs", unquoted_filename) if check_ref_format(refname): keys.add(refname) except (TransportNotPossible, NoSuchFile): pass keys.update(self.get_packed_refs()) return keys