+use DBIx::Class::Schema::Loader::Optional::Dependencies
+ -skip_all_without => 'test_backcompat';
+
use strict;
+use warnings;
use Test::More;
use lib qw(t/backcompat/0.04006/lib);
use File::Path;
use make_dbictest_db;
-require DBIx::Class::Schema::Loader;
-use Test::More;
-plan skip_all => 'set SCHEMA_LOADER_TESTS_BACKCOMPAT to enable these tests'
- unless $ENV{SCHEMA_LOADER_TESTS_BACKCOMPAT};
+use dbixcsl_test_dir qw/$tdir/;
+use Class::Unload ();
+require DBIx::Class::Schema::Loader;
-$^O eq 'MSWin32'
- ? plan(skip_all => "ActiveState perl produces additional warnings, and this test uses unix paths")
- : plan(tests => 85);
-
-my $DUMP_PATH = './t/_dump';
+my $DUMP_PATH = "$tdir/dump";
sub do_dump_test {
my %tdata = @_;
no strict 'refs';
@{$schema_class . '::ISA'} = ('DBIx::Class::Schema::Loader');
+
+ $tdata{options}{use_namespaces} ||= 0;
+
$schema_class->loader_options(dump_directory => $DUMP_PATH, %{$tdata{options}});
my @warns;
$schema_class->connect($make_dbictest_db::dsn);
};
my $err = $@;
- $schema_class->storage->disconnect if !$err && $schema_class->storage;
- undef *{$schema_class};
+
+ Class::Unload->unload($schema_class);
is($err, $tdata{error});
schema => [
qr/package DBICTest::DumpMore::1;/,
qr/->load_namespaces/,
- qr/result_namespace => 'Res'/,
- qr/resultset_namespace => 'RSet'/,
- qr/default_resultset_class => 'RSetBase'/,
+ qr/result_namespace => "Res"/,
+ qr/resultset_namespace => "RSet"/,
+ qr/default_resultset_class => "RSetBase"/,
],
'Res/Foo' => [
qr/package DBICTest::DumpMore::1::Res::Foo;/,
schema => [
qr/package DBICTest::DumpMore::1;/,
qr/->load_namespaces/,
- qr/result_namespace => '\+DBICTest::DumpMore::1::Res'/,
- qr/resultset_namespace => 'RSet'/,
- qr/default_resultset_class => 'RSetBase'/,
+ qr/result_namespace => "\+DBICTest::DumpMore::1::Res"/,
+ qr/resultset_namespace => "RSet"/,
+ qr/default_resultset_class => "RSetBase"/,
qr/use base 'My::SchemaBaseClass'/,
],
'Res/Foo' => [
},
);
-END { rmtree($DUMP_PATH, 1, 1); }
+done_testing;
+
+END { rmtree($DUMP_PATH, 1, 1) if $ENV{SCHEMA_LOADER_TESTS_BACKCOMPAT}; }