Perl-Toolchain-Gang / Test-Harness

Run Perl standard test scripts with statistics
http://testanything.org/
29 stars 66 forks source link

Test failures in t/source_handler.t with old toolchain #110

Open DrHyde opened 2 years ago

DrHyde commented 2 years ago

With perl 5.8.9 to perl 5.14.4 I'm seeing test failures in t/source_handler.t. This probably affects some other Ye Olde Perles with old versions of some toolchain modules:

Can't exec "t/source_tests/source.sh": Permission denied at /home/david/cpantesting/perl-5.8.9/lib/5.8.9/IPC/Open3.pm line 268.
open3: exec of t/source_tests/source.sh failed at /home/david/cpantesting/perl-5.8.9/.cpan/build/Test-Harness-3.42-DyMKY5/blib/lib/TAP/Parser/Iterator
/Process.pm line 165

#   Failed test '... line 1'
#   at t/source_handler.t line 386.
#          got: undef
#     expected: '1..1'

#   Failed test '... line 2'
#   at t/source_handler.t line 386.
#          got: undef
#     expected: 'ok 1 - source.sh'
Can't exec "t/source_tests/source_args.sh": Permission denied at /home/david/cpantesting/perl-5.8.9/lib/5.8.9/IPC/Open3.pm line 268.
open3: exec of t/source_tests/source_args.sh foo failed at /home/david/cpantesting/perl-5.8.9/.cpan/build/Test-Harness-3.42-DyMKY5/blib/lib/TAP/Parser
/Iterator/Process.pm line 165

#   Failed test '... line 1'
#   at t/source_handler.t line 386.
#          got: undef
#     expected: '1..1'

#   Failed test '... line 2'
#   at t/source_handler.t line 386.
#          got: undef
#     expected: 'ok 1 - source_args.sh foo'
# Looks like you failed 4 tests of 79.
t/source_handler.t ..............
Dubious, test returned 4 (wstat 1024, 0x400)
Failed 4/79 subtests
        (less 4 skipped subtests: 71 okay)

It seems that even though t/source_tests/source_args.sh has the execute bit set in the tarball, something in the old toolchain is removing it:

perl-5.8.9 $ ls -l .cpan/build/Test-Harness-3.42-ud1QgD/t/source_tests/
total 60
-rw-r--r-- 1 david david  75 Jul  7  2013 harness
-rw-r--r-- 1 david david 112 Jul  7  2013 harness_badtap
-rw-r--r-- 1 david david 117 Jul  7  2013 harness_complain
-rw-r--r-- 1 david david 179 Jul  7  2013 harness_directives
-rw-r--r-- 1 david david 235 Jul  7  2013 harness_failure
-rw-r--r-- 1 david david 443 Sep 11  2016 psql.bat
-rw-r--r-- 1 david david 149 Jul  7  2013 source
-rw-r--r-- 1 david david  21 Jul  7  2013 source.1
-rw-r--r-- 1 david david  54 Sep 11  2016 source_args.sh
-rw-r--r-- 1 david david 103 Jul  7  2013 source.bat
-rw-r--r-- 1 david david  70 Jul  7  2013 source.pl
-rw-r--r-- 1 david david  46 Sep 11  2016 source.sh
-rw-r--r-- 1 david david  69 Jul 23  2017 source.t
-rw-r--r-- 1 david david  23 Jul  7  2013 source.tap
-rw-r--r-- 1 david david 131 Jul 23  2017 test.tap

You may want to twiddle the test to explicitly turn the execute bit on in this case.