tests/test-http-clone-r
author Mads Kiilerich <mads@kiilerich.com>
Sat, 25 Sep 2010 21:52:17 +0200
changeset 12406 66a07fb76ceb
parent 10398 ace3cf2bc991
permissions -rwxr-xr-x
tests: avoid checking the exitcode of false Solaris false returns 255 instead of 1, so we remove one unneeded instance and replaces another with (exit 1) as suggested by Brodie Rao.

#!/bin/sh

hg init remote
cd remote
echo "# creating 'remote'"
cat >>afile <<EOF
0
EOF
hg add afile
hg commit -m "0.0"
cat >>afile <<EOF
1
EOF
hg commit -m "0.1"
cat >>afile <<EOF
2
EOF
hg commit -m "0.2"
cat >>afile <<EOF
3
EOF
hg commit -m "0.3"
hg update -C 0
cat >>afile <<EOF
1
EOF
hg commit -m "1.1"
cat >>afile <<EOF
2
EOF
hg commit -m "1.2"
cat >fred <<EOF
a line
EOF
cat >>afile <<EOF
3
EOF
hg add fred
hg commit -m "1.3"
hg mv afile adifferentfile
hg commit -m "1.3m"
hg update -C 3
hg mv afile anotherfile
hg commit -m "0.3m"
hg debugindex .hg/store/data/afile.i
hg debugindex .hg/store/data/adifferentfile.i
hg debugindex .hg/store/data/anotherfile.i
hg debugindex .hg/store/data/fred.i
hg debugindex .hg/store/00manifest.i
hg verify
echo "# Starting server"
hg serve -p $HGPORT -E ../error.log -d --pid-file=../hg1.pid
cd ..
cat hg1.pid >> $DAEMON_PIDS

echo "# clone remote via stream"
for i in 0 1 2 3 4 5 6 7 8; do
   hg clone -r "$i" http://localhost:$HGPORT/ test-"$i" 2>&1
   if cd test-"$i"; then
      hg verify
      cd ..
   fi
done
cd test-8
hg pull ../test-7
hg verify
cd ..
cd test-1
hg pull -r 4 http://localhost:$HGPORT/ 2>&1 | sed -e "s,:$HGPORT/,:\$HGPORT/,"
hg verify
hg pull http://localhost:$HGPORT/ 2>&1 | sed -e "s,:$HGPORT/,:\$HGPORT/,"
cd ..
cd test-2
hg pull -r 5 http://localhost:$HGPORT/ 2>&1 | sed -e "s,:$HGPORT/,:\$HGPORT/,"
hg verify
hg pull http://localhost:$HGPORT/ 2>&1 | sed -e "s,:$HGPORT/,:\$HGPORT/,"
hg verify
cd ..
cat error.log