Hi Peter, thanks for catching this.

On 02/16/2012 07:59 PM, Peter Rosin wrote:
> Stefano Lattarini skrev 2012-02-16 19:38:
>> -      plan_ 84
> 
> *snip*
> 
>> +        my $planned = ($lt && $m eq "auto") ? 72 : 28;
> 
> 84?
> 
Yes, it should be so...  But then again, I had run all the 'depcomp*.tap'
tests before pushing, and encountered no failure...  Nor am I encountering
it now, even if depcomp-lt-auto.tap is running just 28 tests!

... And that's because the generated tests call the 'plan_' function
before it is defined!  Ouch.  The attached patch should fix the issue.

Sorry for the noise,
  Stefano
>From ea441902e8f6e53f548e7df779d3cd71400929ec Mon Sep 17 00:00:00 2001
Message-Id: <ea441902e8f6e53f548e7df779d3cd71400929ec.1329421811.git.stefano.lattar...@gmail.com>
From: Stefano Lattarini <stefano.lattar...@gmail.com>
Date: Thu, 16 Feb 2012 20:49:43 +0100
Subject: [PATCH] depcomp tests: fix up today's botched commit

Today's commit 'v1.11-1959-g0699a84' has caused the generated
'depcomp*.tap' tests to call the 'plan_' function *before* it is
defined, and has also caused the extra checks required for better
libtool coverage to be run only when libtool is *not* in use,
rather than the other way around.  Fix this mess.

Report by Peter Rosin.

* tests/gen-testsuite-part: Include './defs' in the generated
tests, rather than doing so from 'depcomp.sh'.  Adjust the count
of TAP tests for 'depcomp-lt-auto.test' (it's 84, not 72).
* tests/depcomp.sh: Adjust accordingly, and fix inverted logic
about the decision of when to run extra checks for libtool.
---
 tests/depcomp.sh         |    7 +++----
 tests/gen-testsuite-part |    7 ++++---
 2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/tests/depcomp.sh b/tests/depcomp.sh
index 7fa07ab..d204058 100755
--- a/tests/depcomp.sh
+++ b/tests/depcomp.sh
@@ -67,8 +67,7 @@
 
 # -------------------------------------------------------------------------
 
-am_create_testdir=empty
-. ./defs || Exit 1
+# This expects ./defs has already been included has already been included..
 
 ocwd=`pwd` || fatal_ "cannot get current working directory"
 longpath=this-is/a-path/which-has/quite-a/definitely/truly/long_long_name
@@ -287,14 +286,14 @@ test -f build-aux/depcomp \
 # only in this later case.
 
 if test $depmode,$depcomp_with_libtool = auto,yes; then
-  do_all_tests () { do_test; }
-else
   do_all_tests ()
   {
     do_test default
     do_test noshared --disable-shared
     do_test nostatic --disable-static
   }
+else
+  do_all_tests () { do_test; }
 fi
 
 case $depmode in
diff --git a/tests/gen-testsuite-part b/tests/gen-testsuite-part
index 7013209..143cef0 100755
--- a/tests/gen-testsuite-part
+++ b/tests/gen-testsuite-part
@@ -341,7 +341,7 @@ foreach my $lt (TRUE, FALSE)
   {
     foreach my $m (keys %depmodes)
       {
-        my $planned = ($lt && $m eq "auto") ? 72 : 28;
+        my $planned = ($lt && $m eq "auto") ? 84 : 28;
         my @required =
           (
             @{$depmodes{$m}},
@@ -349,6 +349,7 @@ foreach my $lt (TRUE, FALSE)
           );
         my @vars_init =
           (
+            "am_create_testdir=empty",
             "depmode=$m",
             "depcomp_with_libtool=" . ($lt ? "yes" : "no"),
           );
@@ -362,9 +363,9 @@ foreach my $lt (TRUE, FALSE)
               #! /bin/sh
               # Automatically generated test.  DO NOT EDIT BY HAND!
               @vars_init
-              plan_ $planned
               required="@required"
-              . ./defs-static || exit '99'
+              . ./defs || Exit 1
+              plan_ $planned
               . "\$testsrcdir/depcomp.sh"; exit "\$?"
 EOF
           },
-- 
1.7.9

Reply via email to