view tests/test-profile @ 11541:ab9fa7a85dd9 stable

filelog: cmp: don't read data if hashes are identical (issue2273) filelog.renamed() is an expensive call as it reads the filelog if p1 == nullid. It's more efficient to first compute the hash, and to bail early if the computed hash is the same as the stored nodeid. 'samehashes' variable is not strictly necessary, but helps for comprehension.
author Nicolas Dumazet <nicdumz.commits@gmail.com>
date Mon, 05 Jul 2010 19:49:54 +0900
parents 9a1b86cfd29e
children
line wrap: on
line source

#!/bin/sh

echo % test --time
hg --time help -q help 2>&1 | grep Time > /dev/null || echo --time failed

hg init a
cd a

echo % test --profile
if "$TESTDIR/hghave" -q lsprof; then
    hg --profile st 2>../out || echo --profile failed
    grep CallCount < ../out > /dev/null || echo wrong --profile

    hg --profile --config profiling.output=../out st 2>&1 \
        || echo --profile + output to file failed
    grep CallCount < ../out > /dev/null \
        || echo wrong --profile output when saving to a file

    hg --profile --config profiling.format=text st 2>&1 \
        | grep CallCount > /dev/null || echo --profile format=text failed

    echo "[profiling]" >> $HGRCPATH
    echo "format=kcachegrind" >> $HGRCPATH

    hg --profile st 2>../out || echo --profile format=kcachegrind failed
    grep 'events: Ticks' < ../out > /dev/null || echo --profile output is wrong

    hg --profile --config profiling.output=../out st 2>&1 \
        || echo --profile format=kcachegrind + output to file failed
    grep 'events: Ticks' < ../out > /dev/null \
        || echo --profile output is wrong
fi