Subject: | t/22_installdirs.t fails with $ENV{PERL_MM_OPT}='INSTALLDIRS=vendor' [PATCH] |
Hello,
When running with PERL_MM_OPT='INSTALLDIRS=vendor' in the environment
(or INSTALLDIRS=site or perl), some tests in t/22_installdirs.t fail
(details below).
This came up while trying to automatically build and bundle
a lot of modules with a custom built perl with isolated paths.
$ PERL_MM_OPT='INSTALLDIRS=vendor' prove -b t/22_installdirs.t
t/22_installdirs.t .. 1/24
# Failed test 'correct INSTALLDIRS'
# at t/22_installdirs.t line 33.
t/22_installdirs.t .. 8/24
# Failed test 'correct INSTALLDIRS'
# at t/22_installdirs.t line 54.
old INSTALLDIRS (probably set by makemaker_args) is overriden by installdirs
# Failed test 'correct INSTALLDIRS'
# at t/22_installdirs.t line 76.
t/22_installdirs.t .. 20/24
# Failed test 'correct INSTALLDIRS'
# at t/22_installdirs.t line 97.
# Looks like you failed 4 tests of 24.
t/22_installdirs.t .. Dubious, test returned 4 (wstat 1024, 0x400)
Failed 4/24 subtests
Test Summary Report
-------------------
t/22_installdirs.t (Wstat: 1024 Tests: 24 Failed: 4)
Failed tests: 5, 11, 17, 23
Non-zero exit status: 4
Files=1, Tests=24, 2 wallclock secs ( 0.03 usr 0.01 sys + 3.64 cusr
0.44 csys = 4.12 CPU)
Result: FAIL
Clearing $ENV{PERL_MM_OPT} in the test passes:
$ PERL_MM_OPT='INSTALLDIRS=vendor' prove -Qb t/22_installdirs-edit.t
old INSTALLDIRS (probably set by makemaker_args) is overriden by installdirs
All tests successful.
Files=1, Tests=24, 2 wallclock secs ( 0.02 usr 0.01 sys + 3.90 cusr
0.38 csys = 4.31 CPU)
Result: PASS
$ diff -u t/22_installdirs.t t/22_installdirs-edit.t
--- t/22_installdirs.t 2012-03-02 00:00:48.000000000 +1100
+++ t/22_installdirs-edit.t 2012-06-06 11:26:54.998603586 +1000
@@ -13,6 +13,8 @@
plan tests => 24;
+undef $ENV{PERL_MM_OPT}; # PERL_MM_OPT='INSTALLDIRS=perl' can interfere
+
SCOPE: {
ok( create_dist('Foo', { 'Makefile.PL' => <<"END_DSL" }),
'create_dist' );
use inc::Module::Install 0.81;
Happy to spruce up the patch, etc. Thanks,
Brad
Subject: | 22_installdirs.t.diff |
--- t/22_installdirs.t 2012-03-02 00:00:48.000000000 +1100
+++ t/22_installdirs-edit.t 2012-06-06 11:26:54.998603586 +1000
@@ -13,6 +13,8 @@
plan tests => 24;
+undef $ENV{PERL_MM_OPT}; # PERL_MM_OPT='INSTALLDIRS=perl' can interfere
+
SCOPE: {
ok( create_dist('Foo', { 'Makefile.PL' => <<"END_DSL" }), 'create_dist' );
use inc::Module::Install 0.81;