changeset 21208:0e1cbd3d52f7 stable

tests: add repository check for pyflakes test If this test was run from a tarball with no Mercurial repository, it would fail because 'hg manifest' didn't work.
author Matt Mackall <mpm@selenic.com>
date Thu, 01 May 2014 09:42:23 -0500
parents b9defeeb62e6
children c5d35995d192
files tests/hghave.py tests/test-check-pyflakes.t
diffstat 2 files changed, 9 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/tests/hghave.py	Sat Apr 26 00:38:02 2014 -0700
+++ b/tests/hghave.py	Thu May 01 09:42:23 2014 -0500
@@ -259,6 +259,10 @@
 def has_serve():
     return os.name != 'nt' # gross approximation
 
+def has_test_repo():
+    t = os.environ["TESTDIR"]
+    return os.path.isdir(os.path.join(t, "..", ".hg"))
+
 def has_tic():
     try:
         import curses
@@ -317,6 +321,7 @@
     "svn-bindings": (has_svn_bindings, "subversion python bindings"),
     "symlink": (has_symlink, "symbolic links"),
     "system-sh": (has_system_sh, "system() uses sh"),
+    "test-repo": (has_test_repo, "running tests from repository"),
     "tic": (has_tic, "terminfo compiler and curses module"),
     "tla": (has_tla, "GNU Arch tla client"),
     "unix-permissions": (has_unix_permissions, "unix-style permissions"),
--- a/tests/test-check-pyflakes.t	Sat Apr 26 00:38:02 2014 -0700
+++ b/tests/test-check-pyflakes.t	Thu May 01 09:42:23 2014 -0500
@@ -1,8 +1,10 @@
-  $ "$TESTDIR/hghave" pyflakes || exit 80
+#if test-repo pyflakes
+
   $ cd "`dirname "$TESTDIR"`"
 
 run pyflakes on all tracked files ending in .py or without a file ending
 (skipping binary file random-seed)
+
   $ hg manifest 2>/dev/null | egrep "\.py$|^[^.]*$" | grep -v /random_seed$ \
   > | xargs pyflakes 2>/dev/null | "$TESTDIR/filterpyflakes.py"
   contrib/win32/hgwebdir_wsgi.py:*: 'win32traceutil' imported but unused (glob)
@@ -16,4 +18,4 @@
   tests/hghave.py:*: 'ssl' imported but unused (glob)
   contrib/win32/hgwebdir_wsgi.py:93: 'from isapi.install import *' used; unable to detect undefined names (glob)
   
-
+#endif