Mercurial > hg-stable
changeset 12172:74f54b7775f2
merge with stable
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Mon, 06 Sep 2010 07:14:18 +0200 |
parents | cc39d07d2212 (current diff) 581066a319e5 (diff) |
children | 5b849148b620 |
files | tests/test-verify.t |
diffstat | 3 files changed, 75 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/verify.py Sun Sep 05 21:00:04 2010 +0200 +++ b/mercurial/verify.py Mon Sep 06 07:14:18 2010 +0200 @@ -199,7 +199,7 @@ for f, f2, size in repo.store.datafiles(): if not f: err(None, _("cannot decode filename '%s'") % f2) - elif size > 0: + elif size > 0 or not revlogv1: storefiles.add(f) files = sorted(set(filenodes) | set(filelinkrevs))
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/revlog-formatv0.py Mon Sep 06 07:14:18 2010 +0200 @@ -0,0 +1,60 @@ +#!/usr/bin/env python +# Copyright 2010 Intevation GmbH +# Author(s): +# Thomas Arendsen Hein <thomas@intevation.de> +# +# This software may be used and distributed according to the terms of the +# GNU General Public License version 2 or any later version. + +"""Create a Mercurial repository in revlog format 0 + +changeset: 0:a1ef0b125355 +tag: tip +user: user +date: Thu Jan 01 00:00:00 1970 +0000 +files: empty +description: +empty file +""" + +import os, sys + +files = [ + ('formatv0/.hg/00changelog.i', + '000000000000004400000000000000000000000000000000000000' + '000000000000000000000000000000000000000000000000000000' + '0000a1ef0b125355d27765928be600cfe85784284ab3'), + ('formatv0/.hg/00changelog.d', + '756163613935613961356635353036303562366138343738336237' + '61623536363738616436356635380a757365720a3020300a656d70' + '74790a0a656d7074792066696c65'), + ('formatv0/.hg/00manifest.i', + '000000000000003000000000000000000000000000000000000000' + '000000000000000000000000000000000000000000000000000000' + '0000aca95a9a5f550605b6a84783b7ab56678ad65f58'), + ('formatv0/.hg/00manifest.d', + '75656d707479006238306465356431333837353835343163356630' + '35323635616431343461623966613836643164620a'), + ('formatv0/.hg/data/empty.i', + '000000000000000000000000000000000000000000000000000000' + '000000000000000000000000000000000000000000000000000000' + '0000b80de5d138758541c5f05265ad144ab9fa86d1db'), + ('formatv0/.hg/data/empty.d', + ''), +] + +def makedirs(name): + """recursive directory creation""" + parent = os.path.dirname(name) + if parent: + makedirs(parent) + os.mkdir(name) + +makedirs(os.path.join(*'formatv0/.hg/data'.split('/'))) + +for name, data in files: + f = open(name, 'wb') + f.write(data.decode('hex')) + f.close() + +sys.exit(0)
--- a/tests/test-verify.t Sun Sep 05 21:00:04 2010 +0200 +++ b/tests/test-verify.t Mon Sep 06 07:14:18 2010 +0200 @@ -84,4 +84,18 @@ 1 integrity errors encountered! (first damaged changeset appears to be 0) + $ cd .. + +test revlog format 0 + + $ "$TESTDIR/revlog-formatv0.py" + $ cd formatv0 + $ hg verify + repository uses revlog format 0 + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 1 files, 1 changesets, 1 total revisions + $ exit 0