bisect: improve tests
- test skipping
- test noupdate
- test bad->good search
- test inconsistent state
#!/bin/sh
set -e
echo % init
hg init
echo % committing changes
count=0
echo > a
while test $count -lt 32 ; do
echo 'a' >> a
test $count -eq 0 && hg add
hg ci -m "msg $count" -d "$count 0"
echo % committed changeset $count
count=`expr $count + 1`
done
echo % log
hg log
echo % hg up -C
hg up -C
echo % bisect test
hg bisect -r
hg bisect -b
hg bisect -g 1
hg bisect -g
echo skip
hg bisect -s
hg bisect -g
hg bisect -g
hg bisect -b
hg bisect -g
echo % bisect reverse test
hg bisect -r
hg bisect -b null
hg bisect -g tip
hg bisect -g
echo skip
hg bisect -s
hg bisect -g
hg bisect -g
hg bisect -b
hg bisect -g
hg bisect -r
hg bisect -g tip
hg bisect -b tip || echo error
hg bisect -r
hg bisect -g null
hg bisect -bU tip
hg id