run_or_err "Prepare blib" "make pure_all"
run_harness_tests
else
- PROVECMD="prove -lrswj$VCPU_USE xt t"
-
- # FIXME - temporary, until Package::Stash is fixed
- if perl -M5.010 -e 1 &>/dev/null ; then
- PROVECMD="$PROVECMD -T"
- fi
+ PROVECMD="prove -lrswTj$VCPU_USE xt t"
echo_err "$(tstamp) running tests with \`$PROVECMD\`"
$PROVECMD 2> >(tee "$TEST_STDERR_LOG")
use strict;
use warnings;
+# FIXME This is a crock of shit, needs to go away
+# currently here to work around https://rt.cpan.org/Ticket/Display.html?id=74151
+# kill with fire when PS::XS / RT#74151 is *finally* fixed
+BEGIN {
+ my $PS_provider;
+
+ if ( "$]" < 5.010 ) {
+ require Package::Stash::PP;
+ $PS_provider = 'Package::Stash::PP';
+ }
+ else {
+ require Package::Stash;
+ $PS_provider = 'Package::Stash';
+ }
+ eval <<"EOS" or die $@;
+
+sub stash_for (\$) {
+ $PS_provider->new(\$_[0]);
+}
+1;
+EOS
+}
+
use Test::More;
use lib 't/lib';
use File::Find;
use File::Spec;
use B qw/svref_2object/;
-use Package::Stash;
# makes sure we can load at least something
use DBIx::Class;
skip "$mod exempt from namespace checks",1 if $skip_idx->{$mod};
my %all_method_like = (map
- { %{Package::Stash->new($_)->get_all_symbols('CODE')} }
+ { %{stash_for($_)->get_all_symbols('CODE')} }
(reverse @{mro::get_linear_isa($mod)})
);
# in case it came from the env
$ENV{DBIC_NO_VERSION_CHECK} = 0;
+# FIXME - work around RT#113965 in combination with -T on older perls:
+# the non-deparsing XS portion of D::D gets confused by some of the IO
+# handles trapped in the debug object of DBIC. What a mess.
+$Data::Dumper::Deparse = 1;
+
use_ok('DBICVersion_v1');
my $version_table_name = 'dbix_class_schema_versions';
use DBICTest;
use Path::Class qw/file/;
+# something deep in Path::Class - mainline ditched it altogether
+plan skip_all => "Test is finicky under -T before 5.10"
+ if "$]" < 5.010 and ${^TAINT};
+
BEGIN { delete @ENV{qw(DBIC_TRACE DBIC_TRACE_PROFILE DBICTEST_SQLITE_USE_FILE)} }
my $schema = DBICTest->init_schema();