# HG changeset patch # User Matt Mackall # Date 1285526689 18000 # Node ID 72be1ab55d62d2d00047a2d6ede4bfd7c3b840bf # Parent f0c5c334ded105e3f0b9d2620a7b0b10070eb72b tests: unify test-strip-cross diff -r f0c5c334ded1 -r 72be1ab55d62 tests/test-strip-cross --- a/tests/test-strip-cross Sun Sep 26 13:44:49 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,64 +0,0 @@ -#!/bin/sh - -# test stripping of filelogs where the linkrev doesn't always increase - -. $TESTDIR/helpers.sh -echo '[extensions]' >> $HGRCPATH -echo 'hgext.mq =' >> $HGRCPATH - -hg init orig -cd orig - -commit() -{ - hg up -qC null - count=1 - for i in "$@"; do - for f in $i; do - echo $count > $f - done - count=`expr $count + 1` - done - hg commit -qAm "$*" -} - -# 2 1 0 2 0 1 2 -commit '201 210' - -commit '102 120' '210' - -commit '021' - -commit '201' '021 120' - -commit '012 021' '102 201' '120 210' - -commit 'manifest-file' - -commit '102 120' '012 210' '021 201' - -commit '201 210' '021 120' '012 102' - -HGUSER=another-user; export HGUSER -commit 'manifest-file' - -commit '012' 'manifest-file' - -cd .. -hg clone -q -U -r -1 -r -2 -r -3 -r -4 -r -6 orig crossed - -for i in crossed/.hg/store/00manifest.i crossed/.hg/store/data/*.i; do - echo $i - hg debugindex $i - echo -done - -for i in 0 1 2 3 4; do - hg clone -q -U --pull crossed $i - echo "% Trying to strip revision $i" - hg --cwd $i strip $i | hidebackup - echo "% Verifying" - hg --cwd $i verify - echo -done - diff -r f0c5c334ded1 -r 72be1ab55d62 tests/test-strip-cross.out --- a/tests/test-strip-cross.out Sun Sep 26 13:44:49 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,94 +0,0 @@ -crossed/.hg/store/00manifest.i - rev offset length base linkrev nodeid p1 p2 - 0 0 112 0 0 6f105cbb914d 000000000000 000000000000 - 1 112 56 1 3 1b55917b3699 000000000000 000000000000 - 2 168 123 1 1 8f3d04e263e5 000000000000 000000000000 - 3 291 122 1 2 f0ef8726ac4f 000000000000 000000000000 - 4 413 87 4 4 0b76e38b4070 000000000000 000000000000 - -crossed/.hg/store/data/012.i - rev offset length base linkrev nodeid p1 p2 - 0 0 3 0 0 b8e02f643373 000000000000 000000000000 - 1 3 3 1 1 5d9299349fc0 000000000000 000000000000 - 2 6 3 2 2 2661d26c6496 000000000000 000000000000 - -crossed/.hg/store/data/021.i - rev offset length base linkrev nodeid p1 p2 - 0 0 3 0 0 b8e02f643373 000000000000 000000000000 - 1 3 3 1 2 5d9299349fc0 000000000000 000000000000 - 2 6 3 2 1 2661d26c6496 000000000000 000000000000 - -crossed/.hg/store/data/102.i - rev offset length base linkrev nodeid p1 p2 - 0 0 3 0 1 b8e02f643373 000000000000 000000000000 - 1 3 3 1 0 5d9299349fc0 000000000000 000000000000 - 2 6 3 2 2 2661d26c6496 000000000000 000000000000 - -crossed/.hg/store/data/120.i - rev offset length base linkrev nodeid p1 p2 - 0 0 3 0 1 b8e02f643373 000000000000 000000000000 - 1 3 3 1 2 5d9299349fc0 000000000000 000000000000 - 2 6 3 2 0 2661d26c6496 000000000000 000000000000 - -crossed/.hg/store/data/201.i - rev offset length base linkrev nodeid p1 p2 - 0 0 3 0 2 b8e02f643373 000000000000 000000000000 - 1 3 3 1 0 5d9299349fc0 000000000000 000000000000 - 2 6 3 2 1 2661d26c6496 000000000000 000000000000 - -crossed/.hg/store/data/210.i - rev offset length base linkrev nodeid p1 p2 - 0 0 3 0 2 b8e02f643373 000000000000 000000000000 - 1 3 3 1 1 5d9299349fc0 000000000000 000000000000 - 2 6 3 2 0 2661d26c6496 000000000000 000000000000 - -crossed/.hg/store/data/manifest-file.i - rev offset length base linkrev nodeid p1 p2 - 0 0 3 0 3 b8e02f643373 000000000000 000000000000 - 1 3 3 1 4 5d9299349fc0 000000000000 000000000000 - -% Trying to strip revision 0 -saved backup bundle to -% Verifying -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -7 files, 4 changesets, 15 total revisions - -% Trying to strip revision 1 -saved backup bundle to -% Verifying -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -7 files, 4 changesets, 14 total revisions - -% Trying to strip revision 2 -saved backup bundle to -% Verifying -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -7 files, 4 changesets, 14 total revisions - -% Trying to strip revision 3 -saved backup bundle to -% Verifying -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -7 files, 4 changesets, 19 total revisions - -% Trying to strip revision 4 -saved backup bundle to -% Verifying -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -7 files, 4 changesets, 19 total revisions - diff -r f0c5c334ded1 -r 72be1ab55d62 tests/test-strip-cross.t --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-strip-cross.t Sun Sep 26 13:44:49 2010 -0500 @@ -0,0 +1,142 @@ +test stripping of filelogs where the linkrev doesn't always increase + + $ . $TESTDIR/helpers.sh + $ echo '[extensions]' >> $HGRCPATH + $ echo 'hgext.mq =' >> $HGRCPATH + $ hg init orig + $ cd orig + $ commit() + > { + > hg up -qC null + > count=1 + > for i in "$@"; do + > for f in $i; do + > echo $count > $f + > done + > count=`expr $count + 1` + > done + > hg commit -qAm "$*" + > } + +2 1 0 2 0 1 2 + + $ commit '201 210' + $ commit '102 120' '210' + $ commit '021' + $ commit '201' '021 120' + $ commit '012 021' '102 201' '120 210' + $ commit 'manifest-file' + $ commit '102 120' '012 210' '021 201' + $ commit '201 210' '021 120' '012 102' + $ HGUSER=another-user; export HGUSER + $ commit 'manifest-file' + $ commit '012' 'manifest-file' + $ cd .. + $ hg clone -q -U -r -1 -r -2 -r -3 -r -4 -r -6 orig crossed + $ for i in crossed/.hg/store/00manifest.i crossed/.hg/store/data/*.i; do + > echo $i + > hg debugindex $i + > echo + > done + crossed/.hg/store/00manifest.i + rev offset length base linkrev nodeid p1 p2 + 0 0 112 0 0 6f105cbb914d 000000000000 000000000000 + 1 112 56 1 3 1b55917b3699 000000000000 000000000000 + 2 168 123 1 1 8f3d04e263e5 000000000000 000000000000 + 3 291 122 1 2 f0ef8726ac4f 000000000000 000000000000 + 4 413 87 4 4 0b76e38b4070 000000000000 000000000000 + + crossed/.hg/store/data/012.i + rev offset length base linkrev nodeid p1 p2 + 0 0 3 0 0 b8e02f643373 000000000000 000000000000 + 1 3 3 1 1 5d9299349fc0 000000000000 000000000000 + 2 6 3 2 2 2661d26c6496 000000000000 000000000000 + + crossed/.hg/store/data/021.i + rev offset length base linkrev nodeid p1 p2 + 0 0 3 0 0 b8e02f643373 000000000000 000000000000 + 1 3 3 1 2 5d9299349fc0 000000000000 000000000000 + 2 6 3 2 1 2661d26c6496 000000000000 000000000000 + + crossed/.hg/store/data/102.i + rev offset length base linkrev nodeid p1 p2 + 0 0 3 0 1 b8e02f643373 000000000000 000000000000 + 1 3 3 1 0 5d9299349fc0 000000000000 000000000000 + 2 6 3 2 2 2661d26c6496 000000000000 000000000000 + + crossed/.hg/store/data/120.i + rev offset length base linkrev nodeid p1 p2 + 0 0 3 0 1 b8e02f643373 000000000000 000000000000 + 1 3 3 1 2 5d9299349fc0 000000000000 000000000000 + 2 6 3 2 0 2661d26c6496 000000000000 000000000000 + + crossed/.hg/store/data/201.i + rev offset length base linkrev nodeid p1 p2 + 0 0 3 0 2 b8e02f643373 000000000000 000000000000 + 1 3 3 1 0 5d9299349fc0 000000000000 000000000000 + 2 6 3 2 1 2661d26c6496 000000000000 000000000000 + + crossed/.hg/store/data/210.i + rev offset length base linkrev nodeid p1 p2 + 0 0 3 0 2 b8e02f643373 000000000000 000000000000 + 1 3 3 1 1 5d9299349fc0 000000000000 000000000000 + 2 6 3 2 0 2661d26c6496 000000000000 000000000000 + + crossed/.hg/store/data/manifest-file.i + rev offset length base linkrev nodeid p1 p2 + 0 0 3 0 3 b8e02f643373 000000000000 000000000000 + 1 3 3 1 4 5d9299349fc0 000000000000 000000000000 + + $ for i in 0 1 2 3 4; do + > hg clone -q -U --pull crossed $i + > echo "% Trying to strip revision $i" + > hg --cwd $i strip $i | hidebackup + > echo "% Verifying" + > hg --cwd $i verify + > echo + > done + % Trying to strip revision 0 + saved backup bundle to + % Verifying + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 7 files, 4 changesets, 15 total revisions + + % Trying to strip revision 1 + saved backup bundle to + % Verifying + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 7 files, 4 changesets, 14 total revisions + + % Trying to strip revision 2 + saved backup bundle to + % Verifying + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 7 files, 4 changesets, 14 total revisions + + % Trying to strip revision 3 + saved backup bundle to + % Verifying + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 7 files, 4 changesets, 19 total revisions + + % Trying to strip revision 4 + saved backup bundle to + % Verifying + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 7 files, 4 changesets, 19 total revisions +