tests: add filtercr.py helper for progress tests
The two tests that used filtercr.py already used a slightly different
version, which explains why test-convert-svn-move.t changed after
switching to using $TESTDIR/filtercr.py.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/filtercr.py Wed Dec 15 16:29:46 2010 +0100
@@ -0,0 +1,10 @@
+#!/usr/bin/env python
+
+# Filter output by the progress extension to make it readable in tests
+
+import sys, re
+
+for line in sys.stdin:
+ line = re.sub(r'\r+[^\n]', lambda m: '\n' + m.group()[-1:], line)
+ sys.stdout.write(line)
+print
--- a/tests/test-convert-svn-move.t Wed Dec 15 09:52:20 2010 +0100
+++ b/tests/test-convert-svn-move.t Wed Dec 15 16:29:46 2010 +0100
@@ -169,14 +169,8 @@
> delay = 0
> refresh = 0
> EOF
- $ cat > filtercr.py <<EOF
- > import sys, re
- > for line in sys.stdin:
- > line = re.sub(r'\r+[^\n]', lambda m: '\n' + m.group()[-1:], line)
- > sys.stdout.write(line)
- > EOF
- $ hg convert svn-repo hg-progress 2>&1 | python filtercr.py
+ $ hg convert svn-repo hg-progress 2>&1 | $TESTDIR/filtercr.py
scanning [ <=> ] 1
scanning [ <=> ] 2
@@ -249,3 +243,4 @@
2 adddb
1 branch
0 clobberdir
+
--- a/tests/test-progress.t Wed Dec 15 09:52:20 2010 +0100
+++ b/tests/test-progress.t Wed Dec 15 16:29:46 2010 +0100
@@ -23,14 +23,6 @@
> }
> EOF
- $ cat > filtercr.py <<EOF
- > import sys, re
- > for line in sys.stdin:
- > line = re.sub(r'\r+[^\n]', lambda m: '\n' + m.group()[-1:], line)
- > sys.stdout.write(line)
- > print
- > EOF
-
$ echo "[extensions]" >> $HGRCPATH
$ echo "progress=" >> $HGRCPATH
$ echo "loop=`pwd`/loop.py" >> $HGRCPATH
@@ -39,14 +31,14 @@
test default params, display nothing because of delay
- $ hg -y loop 3 2>&1 | python filtercr.py
+ $ hg -y loop 3 2>&1 | $TESTDIR/filtercr.py
$ echo "delay=0" >> $HGRCPATH
$ echo "refresh=0" >> $HGRCPATH
test with delay=0, refresh=0
- $ hg -y loop 3 2>&1 | python filtercr.py
+ $ hg -y loop 3 2>&1 | $TESTDIR/filtercr.py
loop [ ] 0/3
loop [=====================> ] 1/3
@@ -55,12 +47,13 @@
test refresh is taken in account
- $ hg -y --config progress.refresh=100 loop 3 2>&1 | python filtercr.py
+ $ hg -y --config progress.refresh=100 loop 3 2>&1 | $TESTDIR/filtercr.py
test format options 1
- $ hg -y --config 'progress.format=number topic item+2' loop 2 2>&1 | python filtercr.py
+ $ hg -y --config 'progress.format=number topic item+2' loop 2 2>&1 \
+ > | $TESTDIR/filtercr.py
0/2 loop lo
1/2 loop lo
@@ -68,7 +61,8 @@
test format options 2
- $ hg -y --config 'progress.format=number item-3 bar' loop 2 2>&1 | python filtercr.py
+ $ hg -y --config 'progress.format=number item-3 bar' loop 2 2>&1 \
+ > | $TESTDIR/filtercr.py
0/2 p.0 [ ]
1/2 p.1 [=================================> ]
@@ -76,7 +70,8 @@
test format options and indeterminate progress
- $ hg -y --config 'progress.format=number item bar' loop -- -2 2>&1 | python filtercr.py
+ $ hg -y --config 'progress.format=number item bar' loop -- -2 2>&1 \
+ > | $TESTDIR/filtercr.py
0 loop.0 [ <=> ]
1 loop.1 [ <=> ]
@@ -84,7 +79,7 @@
make sure things don't fall over if count > total
- $ hg -y loop --total 4 6 2>&1 | python filtercr.py
+ $ hg -y loop --total 4 6 2>&1 | $TESTDIR/filtercr.py
loop [ ] 0/4
loop [================> ] 1/4
@@ -96,5 +91,5 @@
test immediate progress completion
- $ hg -y loop 0 2>&1 | python filtercr.py
+ $ hg -y loop 0 2>&1 | $TESTDIR/filtercr.py