shift->SUPER::VERSION(@_);
}
-my $extra_load_states;
+our $extra_load_states;
our $Smells_Like_VCS = (-e '.git' || -e '.svn'
|| (-e '../../dist.ini' && (-e '../../.git' || -e '../../.svn')));
like($@, qr{Indirect call of method}, "Failed due to indirect.pm, ok");
}
ok(eval { require "other/one.pl"; 1 }, "Loaded other/one.pl ok");
+ chdir("../..");
}
ok(!eval q{use strictures 2; 1; }, "Can't use strictures 2 (this is version 1)");
+
+{
+ skip 'Extra tests disabled on perls <= 5.008003', 1
+ if $] < 5.008004;
+ local $ENV{PERL_STRICTURES_EXTRA} = 1;
+ local $strictures::extra_load_states = undef;
+ local @INC = ("t/dep_constellations/broken", @INC);
+ local %INC = %INC;
+ delete $INC{$_}
+ for qw( indirect.pm multidimensional.pm bareword/filehandles.pm );
+
+ {
+ open my $fh, '>', \my $str;
+ local *STDERR = $fh;
+ strictures->import;
+ like(
+ $str,
+ qr/Missing were:\n\n indirect multidimensional bareword::filehandles/,
+ "failure to load all three extra deps is reported"
+ );
+ }
+
+ {
+ open my $fh, '>', \my $str;
+ local *STDERR = $fh;
+ strictures->import;
+ ok( !$str, "extra dep load failure is not reported a second time" );
+ }
+}