#!perl
+use strict;
+use warnings;
+
use Test::More;
-use Test::Deep;
use Test::Exception;
use lib 't/lib';
use DBICDHTest;
use aliased 'DBIx::Class::DeploymentHandler::VersionStorage::Standard';
use aliased 'DBIx::Class::DeploymentHandler::DeployMethod::SQL::Translator';
+use File::Temp 'tempdir';
use DBICVersion_v1;
use DBIx::Class::DeploymentHandler;
-my $db = 'dbi:SQLite:db.db';
-my @connection = ($db, '', '', { ignore_version => 1 });
-my $sql_dir = 't/sql';
+my $dbh = DBICDHTest::dbh();
+my @connection = (sub { $dbh }, { ignore_version => 1 });
+my $sql_dir = tempdir( CLEANUP => 1 );
my $s = DBICVersion::Schema->connect(@connection);
{
like( $warning, qr/Your DB is currently unversioned. Please call upgrade on your schema to sync the DB/, 'warning when database is unversioned');
}
-DBICDHTest::ready;
-
my $dm = Translator->new({
schema => $s,
script_directory => $sql_dir,
'adding another version works correctly'
);
+my $u;
{
my $warning;
local $SIG{__WARN__} = sub {$warning = shift};
- my $u = DBICVersion::Schema->connect($db, '', '');
- like( $warning, qr/Versions out of sync. This is 1.0, your database contains version 2.0, please call upgrade on your Schema./, 'warning when database/schema mismatch');
+ $u = DBICVersion::Schema->connect(sub { $dbh });
+ like( $warning, qr/Versions out of sync. This is 1\.0, your database contains version 2\.0, please call upgrade on your Schema\./, 'warning when database/schema mismatch');
}