On Thursday 11 November 2010, Stefano Lattarini wrote: > On Wednesday 10 November 2010, Ralf Wildenhues wrote: > > * Stefano Lattarini wrote on Wed, Sep 08, 2010 at 08:57:19PM CEST: > > > * tests/defs.in: Give meaningful messages about the reasons of a > > > test skip; this is especially useful as this file is run without > > > verbose xtraces on. Related reorderings in the code and new > > > comments. > > > > What happened to this patch in the new, rebased patch series? > Nothing; I just left it out, because my main concern in the new patch > series was to arrive quickly at the separation of defs/defs-static > which I need to write the patch optimizing the `instspc*.test' tests. > > > Was it already subsumed in some other series? > No; I'm going to rebase it, and repropose it as a stand-alone patch > soonish (after the present patch series is done with). And here it is.
Regards, Stefano -*-*-*- Tests defs: improve messages for skipped tests. * tests/defs: Give meaningful messages about the reasons of a test skip; this is especially useful as this file is run without verbose xtraces on. Related reorderings in the code and new comments. --- ChangeLog | 8 ++++++ tests/defs | 80 ++++++++++++++++++++++++++++++++++++++++++++++++------------ 2 files changed, 72 insertions(+), 16 deletions(-)
From 25a64f7f2065a45ceccaf4b51cadea08c0534fdd Mon Sep 17 00:00:00 2001 From: Stefano Lattarini <stefano.lattar...@gmail.com> Date: Thu, 11 Nov 2010 14:49:39 +0100 Subject: [PATCH] Tests defs: improve messages for skipped tests. * tests/defs: Give meaningful messages about the reasons of a test skip; this is especially useful as this file is run without verbose xtraces on. Related reorderings in the code and new comments. --- ChangeLog | 8 ++++++ tests/defs | 80 ++++++++++++++++++++++++++++++++++++++++++++++++------------ 2 files changed, 72 insertions(+), 16 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7d439bb..634a3ed 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2010-11-11 Stefano Lattarini <stefano.lattar...@gmail.com> + + Tests defs: improve messages for skipped tests. + * tests/defs: Give meaningful messages about the reasons of a + test skip; this is especially useful as this file is run without + verbose xtraces on. Related reorderings in the code and new + comments. + 2010-11-10 Stefano Lattarini <stefano.lattar...@gmail.com> Tests defs: move static definitions in a new file `defs-static'. diff --git a/tests/defs b/tests/defs index 50d074e..5ad18aa 100644 --- a/tests/defs +++ b/tests/defs @@ -192,6 +192,7 @@ do export GCJ echo "$me: running $GCJ --version" ( $GCJ --version ) || exit 77 + echo "$me: running $GCJ -v" ( $GCJ -v ) || exit 77 ;; g++) @@ -228,11 +229,16 @@ do (echo foo >> $priv_check_temp) >/dev/null 2>&1 overwrite_status=$? rm -f $priv_check_temp - test $overwrite_status = 0 && exit 77 + if test $overwrite_status = 0; then + echo "$me: this test shouldn't be run as root" + exit 77 + fi ;; perl-threads) - # Skip with Devel::Cover: it cannot cope with threads. - test "$WANT_NO_THREADS" = yes && exit 77 + if test x"$WANT_NO_THREADS" = x"yes"; then + echo "$me: skip with Devel::Cover: it cannot cope with threads." + exit 77 + fi ;; python) # Python doesn't support --version, it has -V @@ -248,7 +254,10 @@ do (: > $ro_dir_temp/probe) >/dev/null 2>/dev/null create_status=$? rm -rf $ro_dir_temp - test $create_status = 0 && exit 77 + if test $create_status = 0; then + echo "$me: support of read-only directories is required" + exit 77 + fi ;; rst2html) # Try the variants that are tried in check.am. @@ -257,6 +266,7 @@ do echo "$me: running $r2h --version" $r2h --version && break 2 done + echo "$me: no proper rst2html program found" exit 77 done ;; @@ -264,13 +274,16 @@ do # DejaGnu's runtest program. We rely on being able to specify # the program on the runtest command-line. This requires # DejaGnu 1.4.3 or later. - echo "$me: running runtest --version" + echo "$me: running runtest SOMEPROGRAM=someprogram --version" (runtest SOMEPROGRAM=someprogram --version) || exit 77 ;; tex) # No all versions of Tex support `--version', so we use # a configure check. - test -n "$TEX" || exit 77 + if test x"$TEX" = x; then + echo "$me: TeX is required, but it wasn't found by configure" + exit 77 + fi ;; texi2dvi-o) # Texi2dvi supports `-o' since Texinfo 4.1. @@ -285,6 +298,37 @@ do esac done +# Using just `$testbuilddir' for the check here is ok, since the +# further temporary subdirectory where the test will be run is +# ensured not to contain any whitespace character. +case $testbuilddir in + *\ *|*\ *) + case " $required " in + *' libtool '* | *' libtoolize '* ) + echo "$me: libtool/libtoolized cannot cope correctly" + echo "$me: with spaces in the build tree." + exit 77 + ;; + esac + ;; +esac + +# This test is necessary, although Automake's configure script bails out +# when $srcdir contains spaces. This is because $testsrcdir is in not +# configure-time $srcdir, but is instead configure-time $abs_srcdir, and +# that is allowed to contain spaces. +case $testsrcdir in + *\ * |*\ *) + case " $required " in + *' libtool '* | *' libtoolize '* | *' gettext '* ) + echo "$me: our testsuite setup cannot cope correctly with spaces" + echo "$me: in the source tree for libtool/gettext tests." + exit 77 + ;; + esac + ;; +esac + # We might need extra macros, e.g., from Libtool or Gettext. # Find them on the system. # Use `-I $top_testsrcdir/m4' in addition to `--acdir=$top_testsrcdir/m4', @@ -315,16 +359,20 @@ case " $required " in fi done case " $required " in - *' libtool '* | *' libtoolize '* ) test $libtool_found = yes || exit 77;; - *' gettext '* ) test $gettext_found = yes || exit 77;; - esac - # Libtool cannot cope with spaces in the build tree. Our testsuite setup - # cannot cope with spaces in the source tree name for Libtool and gettext - # tests. Using just `$testbuilddir' for the check here is ok, since the - # further temporary subdirectory where the test will be run is ensured not - # to contain any space. - case $testsrcdir,$testbuilddir in - *\ * | *\ *) exit 77;; + *' libtool '*|*' libtoolize '*) + if test x"$libtool_found" != x"yes"; then + echo "$me: libtool/libtoolize is required, but libtool.m4 wasn't" + echo "$me: found in directories $aclocaldir $extra_includes" + exit 77 + fi + ;; + *' gettext '*) + if test x"$gettext_found" != x"yes"; then + echo "$me: gettext is required, but gettext.m4 wasn't found" + echo "$me: in directories $aclocaldir $extra_includes" + exit 77 + fi + ;; esac ACLOCAL="$ACLOCAL -Wno-syntax -I $top_testsrcdir/m4 $extra_includes -I $aclocaldir" ;; -- 1.7.1