tests/test-profile.t
author Patrick Mezard <patrick@mezard.eu>
Sat, 19 May 2012 17:19:55 +0200
branchstable
changeset 16772 30e46d7138de
parent 12478 bb665db49e32
child 16898 bb91c602d4ad
permissions -rw-r--r--
revset: fix infinite alias expansion detection The alias expansion code it changed from: 1- Get replacement tree 2- Substitute arguments in the replacement tree 3- Expand the replacement tree again into: 1- Get the replacement tree 2- Expand the replacement tree 3- Expand the arguments 4- Substitute the expanded arguments in the replacement tree and fixes cases like: [revsetalias] level1($1, $2) = $1 or $2 level2($1, $2) = level1($2, $1) $ hg log -r "level2(level1(1, 2), 3)" where the original version incorrectly aborted on infinite expansion error, because it was confusing the expanded aliases with their arguments.

test --time

  $ hg --time help -q help 2>&1 | grep Time > /dev/null
  $ hg init a
  $ cd a

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