tests/test-repair-strip
branchstable
changeset 14687 15200b46165b
parent 14508 07722bb8a08c
parent 14686 6ab8b17adc03
child 14688 e2da6eee7950
equal deleted inserted replaced
14508:07722bb8a08c 14687:15200b46165b
     1 #!/bin/sh
       
     2 
       
     3 echo "[extensions]" >> $HGRCPATH
       
     4 echo "mq=">> $HGRCPATH
       
     5 
       
     6 teststrip() {
       
     7     hg -q up -C $1
       
     8     echo % before update $1, strip $2
       
     9     hg parents
       
    10     chmod -$3 $4
       
    11     hg strip $2 2>&1 | sed 's/\(bundle\).*/\1/' | sed 's/Permission denied.*\.hg\/store\/\(.*\)/Permission denied \.hg\/store\/\1/'
       
    12     echo % after update $1, strip $2
       
    13     chmod +$3 $4
       
    14     hg verify
       
    15     echo % journal contents
       
    16     if [ -f .hg/store/journal ]; then
       
    17         sed -e 's/\.i[^\n]*/\.i/' .hg/store/journal
       
    18     else
       
    19         echo "(no journal)"
       
    20     fi
       
    21     ls .hg/store/journal >/dev/null 2>&1 && hg recover
       
    22     ls .hg/strip-backup/* >/dev/null 2>&1 && hg unbundle -q .hg/strip-backup/*
       
    23     rm -rf .hg/strip-backup
       
    24 }
       
    25 
       
    26 hg init test
       
    27 cd test
       
    28 
       
    29 echo a > a
       
    30 hg -q ci -m "a" -A
       
    31 
       
    32 echo b > b
       
    33 hg -q ci -m "b" -A
       
    34 
       
    35 echo b2 >> b
       
    36 hg -q ci -m "b2" -A
       
    37 
       
    38 echo c > c
       
    39 hg -q ci -m "c" -A
       
    40  
       
    41 teststrip 0 2 w .hg/store/data/b.i
       
    42 teststrip 0 2 r .hg/store/data/b.i
       
    43 teststrip 0 2 w .hg/store/00manifest.i
       
    44