view tests/test-bisect @ 7069:852f39691a0a

Eliminate normpath from foldmap calls. Normcase already takes care of upper/lower case and /->\ conversions. What's left for normpath is folding of a/../a sequences but this should be either done consistently on both non-folding and folding code path or not at all, otherwise we are introducing inconsistent behavior between the two that has nothing to do with case folding. Second argument against it - normpath being pure Python function is very slow - as much as 50% of time is spend just inside normpath call on my repository.
author Petr Kodl <petrkodl@gmail.com>
date Tue, 30 Sep 2008 17:23:08 -0400
parents ca6103c5eefd
children 21233de9c053
line wrap: on
line source

#!/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

echo % reproduce AssertionError, issue1228 and issue1182
hg bisect -r
hg bisect -b 4
hg bisect -g 0
hg bisect -s
hg bisect -s
hg bisect -s

echo % reproduce non converging bisect, issue1182
hg bisect -r
hg bisect -g 0
hg bisect -b 2
hg bisect -s

echo % test no action
hg bisect -r
hg bisect || echo failure