# HG changeset patch # User Jun Wu # Date 2017-06-28 20:45:51 # Node ID acfce52518c43aae2ddcfddc7d750c102e548807 # Parent 176030f695cade8520c29d3a1df339ddf00d984b tests: do not use system hg if it does not have "files" command Ancient hg does not have "hg files" so test-check-*.t will fail with "unknown command 'files'": $ hg files hg: unknown command 'files' $ hg --version Mercurial Distributed SCM (version 2.6.2) Test "hg files" and give up using syshg if it does not have "files" command. diff --git a/tests/helpers-testrepo.sh b/tests/helpers-testrepo.sh --- a/tests/helpers-testrepo.sh +++ b/tests/helpers-testrepo.sh @@ -25,3 +25,16 @@ syshgenv () { HGPLAIN=1 export HGPLAIN } + +# Most test-check-* sourcing this file run "hg files", which is not available +# 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() { + : + } +fi