X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F22dump.t;h=671021e9b8440d87d65a41fcdd4378756d3204bc;hb=1336ac639d0f1b9f358493ee73345352611eff78;hp=5d32c90d305dbf8acb6f7aaaf2f6ddbd981764bc;hpb=520107ef3685818201308dd35958e2dfd1c7c5a2;p=dbsrgits%2FDBIx-Class-Schema-Loader.git diff --git a/t/22dump.t b/t/22dump.t index 5d32c90..671021e 100644 --- a/t/22dump.t +++ b/t/22dump.t @@ -6,11 +6,15 @@ use make_dbictest_db; my $dump_path = './t/_dump'; +local $SIG{__WARN__} = sub { + warn $_[0] unless $_[0] =~ + /really_erase_my_files|Dumping manual schema|Schema dump completed/; +}; + { package DBICTest::Schema::1; use base qw/ DBIx::Class::Schema::Loader /; __PACKAGE__->loader_options( - relationships => 1, dump_directory => $dump_path, ); } @@ -19,41 +23,45 @@ my $dump_path = './t/_dump'; package DBICTest::Schema::2; use base qw/ DBIx::Class::Schema::Loader /; __PACKAGE__->loader_options( - relationships => 1, dump_directory => $dump_path, - dump_overwrite => 1, + really_erase_my_files => 1, ); } -plan tests => 8; +plan tests => 5; rmtree($dump_path, 1, 1); eval { DBICTest::Schema::1->connect($make_dbictest_db::dsn) }; ok(!$@, 'no death with dump_directory set') or diag "Dump failed: $@"; -DBICTest::Schema::1->loader(undef); +DBICTest::Schema::1->_loader_invoked(undef); -my @warn_output; -{ - local $SIG{__WARN__} = sub { push(@warn_output, @_) }; - DBICTest::Schema::1->connect($make_dbictest_db::dsn); -} -my @warnings_regexes = ( - qr|Dumping manual schema|, - (qr|DBICTest/Schema/1.*?.pm exists, will not overwrite|) x 3, - qr|Schema dump completed|, -); +SKIP: { + my @warnings_regexes = ( + qr|Dumping manual schema|, + qr|Schema dump completed|, + ); -like(shift @warn_output, $_) foreach (@warnings_regexes); + skip "ActiveState perl produces additional warnings", scalar @warnings_regexes + if ($^O eq 'MSWin32'); -rmtree($dump_path, 1, 1); + my @warn_output; + { + local $SIG{__WARN__} = sub { push(@warn_output, @_) }; + DBICTest::Schema::1->connect($make_dbictest_db::dsn); + } + + like(shift @warn_output, $_) foreach (@warnings_regexes); + + rmtree($dump_path, 1, 1); +} eval { DBICTest::Schema::2->connect($make_dbictest_db::dsn) }; ok(!$@, 'no death with dump_directory set (overwrite1)') or diag "Dump failed: $@"; -DBICTest::Schema::2->loader(undef); +DBICTest::Schema::2->_loader_invoked(undef); eval { DBICTest::Schema::2->connect($make_dbictest_db::dsn) }; ok(!$@, 'no death with dump_directory set (overwrite2)') or diag "Dump failed: $@";