faster travis builds
[dbsrgits/DBIx-Class-DeploymentHandler.git] / t / 04-preconnect.t
1 #!perl
2
3 use strict;
4 use warnings;
5
6 use lib 't/lib';
7 use DBICDHTest;
8 use DBIx::Class::DeploymentHandler;
9 use aliased 'DBIx::Class::DeploymentHandler', 'DH';
10
11 use Path::Class 'dir';
12 use Test::More;
13 use File::Temp 'tempdir';
14
15 my $db = 'dbi:SQLite::memory:';
16 my @connection = ($db, '', '', { ignore_version => 1, on_connect_do => sub { die }});
17 my $sql_dir = tempdir( CLEANUP => 1 );
18
19 VERSION1: {
20   use_ok 'DBICVersion_v1';
21   my $s = DBICVersion::Schema->connect(@connection);
22   $DBICVersion::Schema::VERSION = 1;
23   ok($s, 'DBICVersion::Schema 1 instantiates correctly');
24   ok !$s->storage->connected, 'creating schema did not connect';
25   my $handler = DH->new({
26     script_directory => $sql_dir,
27     schema => $s,
28     databases => 'SQLite',
29     sql_translator_args => { add_drop_table => 0 },
30   });
31   ok !$s->storage->connected, 'creating handler did not connect';
32   ok($handler, 'DBIx::Class::DeploymentHandler w/1 instantiates correctly');
33
34   dir($sql_dir, qw(SQLite initialize 1))->mkpath;
35   $handler->initialize({ version => 1, storage_type => 'SQLite' });
36   ok !$s->storage->connected, 'creating schema did not connect';
37 }
38 done_testing;