diff --git a/tests/test-progress b/tests/test-progress new file mode 100755 index 0000000000..18767ecfdd --- /dev/null +++ b/tests/test-progress @@ -0,0 +1,60 @@ +#!/bin/sh + +cat > loop.py <= 0: + total = loops + loops = abs(loops) + + for i in range(loops): + ui.progress('loop', i, 'loop.%d' % i, 'loopnum', total) + ui.progress('loop', None, 'loop.done', 'loopnum', total) + +commands.norepo += " loop" + +cmdtable = { + "loop": (loop, [], 'hg loop LOOPS'), +} +EOF + +cat > filtercr.py <> $HGRCPATH +echo "progress=" >> $HGRCPATH +echo "loop=" `pwd`/loop.py >> $HGRCPATH +echo "[ui]" >> $HGRCPATH +echo "interactive=1" >> $HGRCPATH + +echo '% test default params, display nothing because of delay' +hg -y loop 3 | python filtercr.py + +echo "[progress]" >> $HGRCPATH +echo "delay=0" >> $HGRCPATH +echo "refresh=0" >> $HGRCPATH + +echo '% test with delay=0, refresh=0' +hg -y loop 3 | python filtercr.py + +echo '% test refresh is taken in account' +hg -y --config progress.refresh=100 loop 3 | python filtercr.py + +echo '% test format options 1' +hg -y --config 'progress.format=number topic item+2' loop 2 | python filtercr.py + +echo '% test format options 2' +hg -y --config 'progress.format=number item-3 bar' loop 2 | python filtercr.py + +echo '% test format options and indeterminate progress' +hg -y --config 'progress.format=number item bar' loop -- -2 | python filtercr.py + +echo '% test immediate progress completion' +hg -y loop 0 | python filtercr.py diff --git a/tests/test-progress.out b/tests/test-progress.out new file mode 100644 index 0000000000..f6ff0d4c56 --- /dev/null +++ b/tests/test-progress.out @@ -0,0 +1,20 @@ +% test default params, display nothing because of delay +% test with delay=0, refresh=0 + +loop [ ] 0/3 +loop [=====================> ] 1/3 +loop [============================================> ] 2/3 + % test refresh is taken in account +% test format options 1 + +0/2 loop lo +1/2 loop lo + % test format options 2 + +0/2 p.0 [ ] +1/2 p.1 [=================================> ] + % test format options and indeterminate progress + +0 loop.0 [ <=> ] +1 loop.1 [ <=> ] + % test immediate progress completion