tests: alias syshg and syshgenv so they can be switched conditionally
authorYuya Nishihara <yuya@tcha.org>
Sun, 02 Jul 2017 13:14:20 +0900
changeset 33204 ddd65b4f3ae6
parent 33203 cf826b9e9ea4
child 33205 2d7300cf3f3f
tests: alias syshg and syshgenv so they can be switched conditionally
tests/helpers-testrepo.sh
tests/test-check-code.t
tests/test-check-commit.t
tests/test-check-config.t
tests/test-check-execute.t
tests/test-check-help.t
tests/test-check-module-imports.t
tests/test-check-py3-compat.t
tests/test-check-pyflakes.t
tests/test-check-shbang.t
tests/test-contrib-perf.t
tests/test-debian-packages.t
tests/test-docker-packaging.t
tests/test-hghave.t
tests/test-imports-checker.t
tests/test-install.t
tests/test-mac-packages.t
--- a/tests/helpers-testrepo.sh	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/helpers-testrepo.sh	Sun Jul 02 13:14:20 2017 +0900
@@ -27,11 +27,10 @@
 # in ancient versions of hg. So we double check if "syshg files" works and
 # fallback to hg bundled in the repo.
 syshg files -h >/dev/null 2>/dev/null
-if [ $? -ne 0 ]; then
-    syshg() {
-        hg "$@"
-    }
-    syshgenv() {
-        :
-    }
+if [ $? -eq 0 ]; then
+    alias testrepohg=syshg
+    alias testrepohgenv=syshgenv
+else
+    alias testrepohg=hg
+    alias testrepohgenv=:
 fi
--- a/tests/test-check-code.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-check-code.t	Sun Jul 02 13:14:20 2017 +0900
@@ -7,7 +7,8 @@
 New errors are not allowed. Warnings are strongly discouraged.
 (The writing "no-che?k-code" is for not skipping this file when checking.)
 
-  $ syshg locate -X contrib/python-zstandard -X hgext/fsmonitor/pywatchman |
+  $ testrepohg locate -X contrib/python-zstandard \
+  > -X hgext/fsmonitor/pywatchman |
   > sed 's-\\-/-g' | "$check_code" --warnings --per-file=0 - || false
   Skipping i18n/polib.py it has no-che?k-code (glob)
   Skipping mercurial/httpclient/__init__.py it has no-che?k-code (glob)
@@ -33,7 +34,7 @@
 
 Prevent adding new files in the root directory accidentally.
 
-  $ syshg files 'glob:*'
+  $ testrepohg files 'glob:*'
   .editorconfig
   .hgignore
   .hgsigs
--- a/tests/test-check-commit.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-check-commit.t	Sun Jul 02 13:14:20 2017 +0900
@@ -8,8 +8,9 @@
 
   $ cd $TESTDIR/..
 
-  $ for node in `syshg log --rev 'not public() and ::. and not desc("# no-check-commit")' --template '{node|short}\n'`; do
-  >    syshg export --git $node | contrib/check-commit > ${TESTTMP}/check-commit.out
+  $ for node in `testrepohg log --rev 'not public() and ::. and not desc("# no-check-commit")' --template '{node|short}\n'`; do
+  >    testrepohg export --git $node \
+  >        | contrib/check-commit > ${TESTTMP}/check-commit.out
   >    if [ $? -ne 0 ]; then
   >        echo "Revision $node does not comply with rules"
   >        echo '------------------------------------------------------'
--- a/tests/test-check-config.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-check-config.t	Sun Jul 02 13:14:20 2017 +0900
@@ -43,5 +43,5 @@
 
 New errors are not allowed. Warnings are strongly discouraged.
 
-  $ syshg files "set:(**.py or **.txt) - tests/**" | sed 's|\\|/|g' |
+  $ testrepohg files "set:(**.py or **.txt) - tests/**" | sed 's|\\|/|g' |
   >   $PYTHON contrib/check-config.py
--- a/tests/test-check-execute.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-check-execute.t	Sun Jul 02 13:14:20 2017 +0900
@@ -5,20 +5,20 @@
 
 look for python scripts without the execute bit
 
-  $ syshg files 'set:**.py and not exec() and grep(r"^#!.*?python")'
+  $ testrepohg files 'set:**.py and not exec() and grep(r"^#!.*?python")'
   [1]
 
 look for python scripts with execute bit but not shebang
 
-  $ syshg files 'set:**.py and exec() and not grep(r"^#!.*?python")'
+  $ testrepohg files 'set:**.py and exec() and not grep(r"^#!.*?python")'
   [1]
 
 look for shell scripts with execute bit but not shebang
 
-  $ syshg files 'set:**.sh and exec() and not grep(r"^#!.*(ba)?sh")'
+  $ testrepohg files 'set:**.sh and exec() and not grep(r"^#!.*(ba)?sh")'
   [1]
 
 look for non scripts with no shebang
 
-  $ syshg files 'set:exec() and not **.sh and not **.py and not grep(r"^#!")'
+  $ testrepohg files 'set:exec() and not **.sh and not **.py and not grep(r"^#!")'
   [1]
--- a/tests/test-check-help.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-check-help.t	Sun Jul 02 13:14:20 2017 +0900
@@ -23,7 +23,7 @@
 Check if ":hg:`help TOPIC`" is valid:
 (use "xargs -n1 -t" to see which help commands are executed)
 
-  $ syshg files 'glob:{hgdemandimport,hgext,mercurial}/**/*.py' \
+  $ testrepohg files 'glob:{hgdemandimport,hgext,mercurial}/**/*.py' \
   > | sed 's|\\|/|g' \
   > | xargs $PYTHON "$TESTTMP/scanhelptopics.py" \
   > | xargs -n1 hg help > /dev/null
--- a/tests/test-check-module-imports.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-check-module-imports.t	Sun Jul 02 13:14:20 2017 +0900
@@ -14,7 +14,7 @@
 Known-bad files are excluded by -X as some of them would produce unstable
 outputs, which should be fixed later.
 
-  $ syshg locate 'set:**.py or grep(r"^#!.*?python")' \
+  $ testrepohg locate 'set:**.py or grep(r"^#!.*?python")' \
   > 'tests/**.t' \
   > -X contrib/debugshell.py \
   > -X contrib/python-zstandard/ \
--- a/tests/test-check-py3-compat.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-check-py3-compat.t	Sun Jul 02 13:14:20 2017 +0900
@@ -3,7 +3,8 @@
   $ . "$TESTDIR/helpers-testrepo.sh"
   $ cd "$TESTDIR"/..
 
-  $ syshg files 'set:(**.py)' | sed 's|\\|/|g' | xargs $PYTHON contrib/check-py3-compat.py
+  $ testrepohg files 'set:(**.py)' | sed 's|\\|/|g' \
+  > | xargs $PYTHON contrib/check-py3-compat.py
   contrib/python-zstandard/setup.py not using absolute_import
   contrib/python-zstandard/setup_zstd.py not using absolute_import
   contrib/python-zstandard/tests/common.py not using absolute_import
@@ -22,7 +23,8 @@
   tests/test-demandimport.py not using absolute_import
 
 #if py3exe
-  $ syshg files 'set:(**.py) - grep(pygments)' -X hgext/fsmonitor/pywatchman \
+  $ testrepohg files 'set:(**.py) - grep(pygments)' \
+  > -X hgext/fsmonitor/pywatchman \
   > | sed 's|\\|/|g' | xargs $PYTHON3 contrib/check-py3-compat.py \
   > | sed 's/[0-9][0-9]*)$/*)/'
   hgext/convert/transport.py: error importing: <*Error> No module named 'svn.client' (error at transport.py:*) (glob)
@@ -38,7 +40,7 @@
 #endif
 
 #if py3exe py3pygments
-  $ syshg files 'set:(**.py) and grep(pygments)' | sed 's|\\|/|g' \
+  $ testrepohg files 'set:(**.py) and grep(pygments)' | sed 's|\\|/|g' \
   > | xargs $PYTHON3 contrib/check-py3-compat.py \
   > | sed 's/[0-9][0-9]*)$/*)/'
 #endif
--- a/tests/test-check-pyflakes.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-check-pyflakes.t	Sun Jul 02 13:14:20 2017 +0900
@@ -6,7 +6,7 @@
 run pyflakes on all tracked files ending in .py or without a file ending
 (skipping binary file random-seed)
 
-  $ syshg locate 'set:**.py or grep("^#!.*python")' \
+  $ testrepohg locate 'set:**.py or grep("^#!.*python")' \
   > -X hgext/fsmonitor/pywatchman \
   > -X mercurial/pycompat.py -X contrib/python-zstandard \
   > 2>/dev/null \
--- a/tests/test-check-shbang.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-check-shbang.t	Sun Jul 02 13:14:20 2017 +0900
@@ -5,11 +5,11 @@
 
 look for python scripts that do not use /usr/bin/env
 
-  $ syshg files 'set:grep(r"^#!.*?python") and not grep(r"^#!/usr/bi{1}n/env python") - **/*.t'
+  $ testrepohg files 'set:grep(r"^#!.*?python") and not grep(r"^#!/usr/bi{1}n/env python") - **/*.t'
   [1]
 
 In tests, enforce $PYTHON and *not* /usr/bin/env python or similar:
-  $ syshg files 'set:grep(r"#!.*?python") and **/*.t' \
+  $ testrepohg files 'set:grep(r"#!.*?python") and **/*.t' \
   > -X tests/test-check-execute.t \
   > -X tests/test-check-module-imports.t \
   > -X tests/test-check-pyflakes.t \
@@ -21,5 +21,5 @@
 
 look for shell scripts that do not use /bin/sh
 
-  $ syshg files 'set:grep(r"^#!.*/bi{1}n/sh") and not grep(r"^#!/bi{1}n/sh")'
+  $ testrepohg files 'set:grep(r"^#!.*/bi{1}n/sh") and not grep(r"^#!/bi{1}n/sh")'
   [1]
--- a/tests/test-contrib-perf.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-contrib-perf.t	Sun Jul 02 13:14:20 2017 +0900
@@ -170,6 +170,6 @@
 
   $ cd "$TESTDIR/.."
 
-  $ (syshg files -r 1.2 glob:mercurial/*.c glob:mercurial/*.py;
-  >  syshg files -r tip glob:mercurial/*.c glob:mercurial/*.py) |
+  $ (testrepohg files -r 1.2 glob:mercurial/*.c glob:mercurial/*.py;
+  >  testrepohg files -r tip glob:mercurial/*.c glob:mercurial/*.py) |
   > "$TESTDIR"/check-perf-code.py contrib/perf.py
--- a/tests/test-debian-packages.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-debian-packages.t	Sun Jul 02 13:14:20 2017 +0900
@@ -1,7 +1,7 @@
 #require test-repo slow debhelper
 
   $ . "$TESTDIR/helpers-testrepo.sh"
-  $ syshgenv
+  $ testrepohgenv
 
 Ensure debuild doesn't run the testsuite, as that could get silly.
   $ DEB_BUILD_OPTIONS=nocheck
--- a/tests/test-docker-packaging.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-docker-packaging.t	Sun Jul 02 13:14:20 2017 +0900
@@ -1,7 +1,7 @@
 #require test-repo slow docker
 
   $ . "$TESTDIR/helpers-testrepo.sh"
-  $ syshgenv
+  $ testrepohgenv
 
 Ensure debuild doesn't run the testsuite, as that could get silly.
   $ DEB_BUILD_OPTIONS=nocheck
--- a/tests/test-hghave.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-hghave.t	Sun Jul 02 13:14:20 2017 +0900
@@ -21,7 +21,7 @@
   >   foo
   > EOF
   $ ( \
-  > syshgenv; \
+  > testrepohgenv; \
   > $TESTDIR/run-tests.py $HGTEST_RUN_TESTS_PURE test-hghaveaddon.t \
   > )
   .
--- a/tests/test-imports-checker.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-imports-checker.t	Sun Jul 02 13:14:20 2017 +0900
@@ -1,7 +1,7 @@
 #require test-repo
 
   $ . "$TESTDIR/helpers-testrepo.sh"
-  $ syshgenv
+  $ testrepohgenv
   $ import_checker="$TESTDIR"/../contrib/import-checker.py
 
 Run the doctests from the import checker, and make sure
--- a/tests/test-install.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-install.t	Sun Jul 02 13:14:20 2017 +0900
@@ -159,7 +159,7 @@
   >     print('  %s' % f)
   > EOF
 
-  $ (syshgenv; $PYTHON wixxml.py help )
+  $ ( testrepohgenv; $PYTHON wixxml.py help )
   Not installed:
     help/common.txt
     help/hg-ssh.8.txt
@@ -168,7 +168,7 @@
     help/hgrc.5.txt
   Not tracked:
 
-  $ ( syshgenv; $PYTHON wixxml.py templates )
+  $ ( testrepohgenv; $PYTHON wixxml.py templates )
   Not installed:
   Not tracked:
 
--- a/tests/test-mac-packages.t	Fri Jun 30 21:49:29 2017 +0900
+++ b/tests/test-mac-packages.t	Sun Jul 02 13:14:20 2017 +0900
@@ -1,7 +1,7 @@
 #require test-repo slow osx osxpackaging
 
   $ . "$TESTDIR/helpers-testrepo.sh"
-  $ syshgenv
+  $ testrepohgenv
 
   $ OUTPUTDIR="`pwd`"
   $ export OUTPUTDIR