tests: use suffix, not exec-bit, to tell which files are tests
authorStefano Lattarini <stefano.lattarini@gmail.com>
Sun, 2 Sep 2012 19:55:07 +0000 (21:55 +0200)
committerJim Meyering <meyering@redhat.com>
Wed, 5 Sep 2012 06:48:28 +0000 (08:48 +0200)
* tests/Makefile.am (vc_exe_in_TESTS): Adjust to look, in the 'tests/'
subdirectory, for files that have one of the extensions listed in
$(TEST_EXTENSIONS), rather than for executable files.

tests/Makefile.am

index 9e47f28..68ea6b4 100644 (file)
 TESTS = $(all_tests)
 root_tests = $(all_root_tests)
 
-# Ensure that all version-controlled executable files are listed
-# in $(all_tests).
+# Ensure that each version-controlled file in 'tests/' with a suffix
+# specified in $(TEST_EXTENSIONS) is listed in $(all_tests).
 vc_exe_in_TESTS:
        $(AM_V_GEN)test -d $(top_srcdir)/.git || exit 1;                \
-        {                                                              \
+       bs="\\";                                                        \
+       test_extensions_rx=`echo $(TEST_EXTENSIONS)                     \
+         | sed -e "s/ /|/g" -e "s/$$bs./$$bs$$bs./g"`;                 \
+       {                                                               \
          for t in $(all_tests); do echo $$t; done;                     \
          cd $(top_srcdir);                                             \
-         for f in `$(SHELL) build-aux/vc-list-files $(subdir)          \
-                     | sed 's!^$(subdir)/!!'`; do                      \
-           test -f "tests/$$f" && test -x "tests/$$f" && echo "$$f";   \
-         done;                                                         \
-        } | sort | uniq -u | grep . && exit 1; :
+         $(SHELL) build-aux/vc-list-files $(subdir)                    \
+           | sed 's!^$(subdir)/!!' | grep -v '^init\.sh$$'             \
+           | $(EGREP) "$$test_extensions_rx\$$";                       \
+       } | sort | uniq -u | grep . && exit 1; :
 
 check-local: vc_exe_in_TESTS
 .PHONY: vc_exe_in_TESTS