[PATCH] test: always report missing prereqs, independent of `--verbose' option
Pieter Praet
pieter at praet.org
Thu Jan 19 16:24:02 PST 2012
On Wed, 18 Jan 2012 15:53:59 +0200, Tomi Ollila <tomi.ollila at iki.fi> wrote:
> On Wed, 18 Jan 2012 13:19:41 +0100, Pieter Praet <pieter at praet.org> wrote:
> > When tests are skipped due to missing prereqs, those prereqs are only
> > displayed when running with the `--verbose' option. This is essential
> > information when troubleshooting, so always send to stdout.
> >
> > ---
>
> Instead of this the test suite could be enchanged so that
> full log of the execution is stored somewhere and path
> to that file is displayed at the end of test. Generally,
> all output could stay available after tests exit so that
> those could be investigated furtner.
>
Indeed. AFAIK, this used to be possible using the `--tee' option,
but the files it produces appear to be deleted when the tests finish.
> (I tried to grep 'missing prerequisites' after running test
> but did not find the info. the file opened for >&3 has been
> deleted already?)
>
Hmmm, odd.
Are you sure you were using my patch and/or the `--verbose' option?
Works here, using this highly sophisticated Emacs-hiding wizardry:
#+begin_src sh
sudo mv /usr/bin/emacs /usr/bin/emacs.bak
make test | grep 'missing prerequisites'
sudo mv /usr/bin/emacs.bak /usr/bin/emacs
#+end_src
(patent pending... ;)
> Now I just see huge amounts of missing prerequisites: emacs(1)
> in my output (I presume that doesn't happen due to my
> hack to "hide" emacs).
>
When using my patch, you mean?
Most likely because "$test_subtest_missing_external_prereqs_" is only
reset at the beginning of every test series, so if an Emacs-dependent
subtest is skipped, all subsequent skipped subtests will report that
dependency as well, even if they were skipped due to a missing vi :).
> But well, I'm not against applying this patch -- just that
> the test system starts to get so rotten touching it gives
> shivers...
>
I wouldn't say it's getting rotten, but yeah, "tread lightly" should
probably be mandatory advice to those aspiring to explore its bowels...
> Tomi
>
> >
> > test/test-lib.sh | 4 ++--
> > 1 files changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/test/test-lib.sh b/test/test-lib.sh
> > index d1fbc05..6560628 100644
> > --- a/test/test-lib.sh
> > +++ b/test/test-lib.sh
> > @@ -673,8 +673,8 @@ test_skip () {
> >
> > test_check_missing_external_prereqs_ () {
> > if test -n "$test_subtest_missing_external_prereqs_"; then
> > - say_color skip >&3 "missing prerequisites:"
> > - echo "$test_subtest_missing_external_prereqs_" >&3
> > + say_color skip >&1 "missing prerequisites:"
> > + echo "$test_subtest_missing_external_prereqs_" >&1
> > test_report_skip_ "$@"
> > else
> > false
> > --
> > 1.7.8.1
Peace
--
Pieter
More information about the notmuch
mailing list