Michael G Schwern wrote:

On Sun, Jul 17, 2005 at 11:43:39PM +0200, Gerrit P. Haase wrote:

Nope, Teat::Harness now at version 2.52:

$ make test
/usr/bin/perl.exe "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t


Ok, see if MakeMaker has anything to do with this by running:

perl -MTest::Harness -Iblib/lib -Iblib/arch -wle 'runtests @ARGV' t/*.t

If it still fails then we know MakeMaker is not involved.  I don't think
it is.

$ perl -MTest::Harness -Iblib/lib -Iblib/arch -wle 'runtests @ARGV'
[...]
Failed Test Stat Wstat Total Fail  Failed  List of Failed
-----------------------------------------------------------------------------------------------------
t/test1.t      2   512    ??   ??       %  ??
t/test3.t      2   512    ??   ??       %  ??
t/test5.t      2   512    ??   ??       %  ??
Failed 3/6 test scripts, 50.00% okay. 0/3 subtests failed, 100.00% okay.


Then try:

perl -MTest::Harness -Iblib/lib -Iblib/arch -wle '$Test::Harness::Debug = 1;  
$Test::Harness::Verbose = 1;  runtests @ARGV' t/*.t
The lines we're looking for are "# PERL5LIB=..." from THS->analyze_file()
telling us how TH is setting @INC.

t/test0....# Running: /usr/bin/perl -w t/test0.t
# PERL5LIB=blib/lib:blib/arch
1..1
# Running under perl version 5.008007 for cygwin
# Current time local: Mon Jul 18 00:14:08 2005
# Current time GMT:   Sun Jul 17 22:14:08 2005
# Using Test.pm version 1.25
ok 1
ok
t/test1....# Running: /usr/bin/perl -w t/test1.t
# PERL5LIB=
Can't locate TestModule.pm in @INC (@INC contains: /usr/lib/perl5/5.8/cygwin /usr/lib/perl5/5.8 /usr/l ib/perl5/site_perl/5.8/cygwin /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5 /vendor_perl/5.8/cygwin /usr/lib/perl5/vendor_perl/5.8 /usr/lib/perl5/vendor_perl/5.8 .) at t/test1.t line 2.
BEGIN failed--compilation aborted at t/test1.t line 2.
dubious
        Test returned status 2 (wstat 512, 0x200)
t/test2....# Running: /usr/bin/perl -w t/test2.t
# PERL5LIB=blib/lib:blib/arch
1..1
# Running under perl version 5.008007 for cygwin
# Current time local: Mon Jul 18 00:14:09 2005
# Current time GMT:   Sun Jul 17 22:14:09 2005
# Using Test.pm version 1.25
ok 1
ok
t/test3....# Running: /usr/bin/perl -w t/test3.t
# PERL5LIB=
Can't locate TestModule.pm in @INC (@INC contains: /usr/lib/perl5/5.8/cygwin /usr/lib/perl5/5.8 /usr/l ib/perl5/site_perl/5.8/cygwin /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5 /vendor_perl/5.8/cygwin /usr/lib/perl5/vendor_perl/5.8 /usr/lib/perl5/vendor_perl/5.8 .) at t/test3.t line 2.
BEGIN failed--compilation aborted at t/test3.t line 2.
dubious
        Test returned status 2 (wstat 512, 0x200)
t/test4....# Running: /usr/bin/perl -w t/test4.t
# PERL5LIB=blib/lib:blib/arch
1..1
# Running under perl version 5.008007 for cygwin
# Current time local: Mon Jul 18 00:14:10 2005
# Current time GMT:   Sun Jul 17 22:14:10 2005
# Using Test.pm version 1.25
ok 1
ok
t/test5....# Running: /usr/bin/perl -w t/test5.t
# PERL5LIB=
Can't locate TestModule.pm in @INC (@INC contains: /usr/lib/perl5/5.8/cygwin /usr/lib/perl5/5.8 /usr/l ib/perl5/site_perl/5.8/cygwin /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5 /vendor_perl/5.8/cygwin /usr/lib/perl5/vendor_perl/5.8 /usr/lib/perl5/vendor_perl/5.8 .) at t/test5.t line 2.
BEGIN failed--compilation aborted at t/test5.t line 2.
dubious
        Test returned status 2 (wstat 512, 0x200)
Failed Test Stat Wstat Total Fail  Failed  List of Failed
-----------------------------------------------------------------------------------------------------
t/test1.t      2   512    ??   ??       %  ??
t/test3.t      2   512    ??   ??       %  ??
t/test5.t      2   512    ??   ??       %  ??
Failed 3/6 test scripts, 50.00% okay. 0/3 subtests failed, 100.00% okay.

You'll probably also want to look at the output of THS->_command_line().
Unfortunately there's not a $Debug print for that so you should put one in.

$ perl -MTest::Harness -Iblib/lib -Iblib/arch -wle '$Test::Harness::Debug = 1; $Test::Harness::Verbose = 1; runtests @ARGV' t/*.t
t/test0....# _command_line: /usr/bin/perl -w t/test0.t
# Running: /usr/bin/perl -w t/test0.t
# PERL5LIB=blib/lib:blib/arch
# _command_line: /usr/bin/perl -w t/test0.t
1..1
# Running under perl version 5.008007 for cygwin
# Current time local: Mon Jul 18 00:26:34 2005
# Current time GMT:   Sun Jul 17 22:26:34 2005
# Using Test.pm version 1.25
ok 1
ok
t/test1....# _command_line: /usr/bin/perl -w t/test1.t
# Running: /usr/bin/perl -w t/test1.t
# PERL5LIB=
# _command_line: /usr/bin/perl -w t/test1.t
Can't locate TestModule.pm in @INC (@INC contains: /usr/lib/perl5/5.8/cygwin /usr/lib/perl5/5.8 /usr/lib/perl5/site_perl/5.8/cygwin /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/vendor_perl/5.8/cygwin /usr/lib/perl5/vendor_perl/5.8 /usr/lib/perl5/vendor_perl/5.8 .) at t/test1.t line 2.
BEGIN failed--compilation aborted at t/test1.t line 2.
dubious
        Test returned status 2 (wstat 512, 0x200)
t/test2....# _command_line: /usr/bin/perl -w t/test2.t
# Running: /usr/bin/perl -w t/test2.t
# PERL5LIB=blib/lib:blib/arch
# _command_line: /usr/bin/perl -w t/test2.t
1..1
# Running under perl version 5.008007 for cygwin
# Current time local: Mon Jul 18 00:26:35 2005
# Current time GMT:   Sun Jul 17 22:26:35 2005
# Using Test.pm version 1.25
ok 1
ok
t/test3....# _command_line: /usr/bin/perl -w t/test3.t
# Running: /usr/bin/perl -w t/test3.t
# PERL5LIB=
# _command_line: /usr/bin/perl -w t/test3.t
Can't locate TestModule.pm in @INC (@INC contains: /usr/lib/perl5/5.8/cygwin /usr/lib/perl5/5.8 /usr/lib/perl5/site_perl/5.8/cygwin /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/vendor_perl/5.8/cygwin /usr/lib/perl5/vendor_perl/5.8 /usr/lib/perl5/vendor_perl/5.8 .) at t/test3.t line 2.
BEGIN failed--compilation aborted at t/test3.t line 2.
dubious
        Test returned status 2 (wstat 512, 0x200)
t/test4....# _command_line: /usr/bin/perl -w t/test4.t
# Running: /usr/bin/perl -w t/test4.t
# PERL5LIB=blib/lib:blib/arch
# _command_line: /usr/bin/perl -w t/test4.t
1..1
# Running under perl version 5.008007 for cygwin
# Current time local: Mon Jul 18 00:26:36 2005
# Current time GMT:   Sun Jul 17 22:26:36 2005
# Using Test.pm version 1.25
ok 1
ok
t/test5....# _command_line: /usr/bin/perl -w t/test5.t
# Running: /usr/bin/perl -w t/test5.t
# PERL5LIB=
# _command_line: /usr/bin/perl -w t/test5.t
Can't locate TestModule.pm in @INC (@INC contains: /usr/lib/perl5/5.8/cygwin /usr/lib/perl5/5.8 /usr/lib/perl5/site_perl/5.8/cygwin /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/vendor_perl/5.8/cygwin /usr/lib/perl5/vendor_perl/5.8 /usr/lib/perl5/vendor_perl/5.8 .) at t/test5.t line 2.
BEGIN failed--compilation aborted at t/test5.t line 2.
dubious
        Test returned status 2 (wstat 512, 0x200)
Failed Test Stat Wstat Total Fail  Failed  List of Failed
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
t/test1.t      2   512    ??   ??       %  ??
t/test3.t      2   512    ??   ??       %  ??
t/test5.t      2   512    ??   ??       %  ??
Failed 3/6 test scripts, 50.00% okay. 0/3 subtests failed, 100.00% okay.


Do any of these tests have -T in the #! line?

No, all the same files, interesting thing is that only every second
time it fails, every other test succeeds:

$ for i in `ls t`; do cat t/$i ; done
use Test;
use TestModule;

BEGIN { plan tests => 1 }

ok(1);
use Test;
use TestModule;

BEGIN { plan tests => 1 }

ok(1);
use Test;
use TestModule;

BEGIN { plan tests => 1 }

ok(1);
use Test;
use TestModule;

BEGIN { plan tests => 1 }

ok(1);
use Test;
use TestModule;

BEGIN { plan tests => 1 }

ok(1);
use Test;
use TestModule;

BEGIN { plan tests => 1 }

ok(1);


Funny ;)


Gerrit
--
=^..^=

Reply via email to