view tests/test-repair-strip @ 9469:7f0f882af23d

config: abort on indented non-continuation lines (issue1829) Previously, as soon as a continuation would be met, "cont" would stay forever set to True, but "item" was set back to "None". This caused the continuation code bits to run every time, until the next "self.get(section, item) + '\n'" which would crash.
author Nicolas Dumazet <nicdumz.commits@gmail.com>
date Sat, 12 Sep 2009 11:17:07 +0200
parents 4a1b24dbf753
children 4bb4895e1693
line wrap: on
line source

#!/bin/sh

echo "[extensions]" >> $HGRCPATH
echo "mq=">> $HGRCPATH

teststrip() {
    hg -q up -C $1
    echo % before update $1, strip $2
    hg parents
    chmod -$3 $4
    hg strip $2 2>&1 | sed 's/\(saving bundle to \).*/\1/' | sed 's/Permission denied.*\.hg\/store\/\(.*\)/Permission denied \.hg\/store\/\1/'
    echo % after update $1, strip $2
    chmod +$3 $4
    hg verify
    echo % journal contents
    if [ -f .hg/store/journal ]; then
        sed -e 's/\.i[^\n]*/\.i/' .hg/store/journal
    else
        echo "(no journal)"
    fi
    ls .hg/store/journal >/dev/null 2>&1 && hg recover
    ls .hg/strip-backup/* >/dev/null 2>&1 && hg unbundle -q .hg/strip-backup/*
    rm -rf .hg/strip-backup
}

hg init test
cd test

echo a > a
hg -q ci -m "a" -A

echo b > b
hg -q ci -m "b" -A

echo b2 >> b
hg -q ci -m "b2" -A

echo c > c
hg -q ci -m "c" -A
 
teststrip 0 2 w .hg/store/data/b.i
teststrip 0 2 r .hg/store/data/b.i
teststrip 0 2 w .hg/store/00manifest.i