rename sqltargs to sql_translator_args
[dbsrgits/DBIx-Class-DeploymentHandler.git] / t / deploy_methods / sql_translator_deprecated.t
CommitLineData
02d58ac0 1#!perl
2
3use Test::More;
4use Test::Exception;
5
6use lib 't/lib';
7use DBICDHTest;
d50f2521 8use aliased
91557c90 9 'DBIx::Class::DeploymentHandler::DeployMethod::SQL::Translator::Deprecated';
d50f2521 10
11use File::Spec::Functions;
12
13my $db = 'dbi:SQLite:db.db';
14my @connection = ($db, '', '', { ignore_version => 1 });
15my $sql_dir = 't/sql';
16
17DBICDHTest::ready;
18
19VERSION1: {
20 use_ok 'DBICVersion_v1';
21 my $s = DBICVersion::Schema->connect(@connection);
22 my $dm = Deprecated->new({
23 schema => $s,
24 upgrade_directory => $sql_dir,
25 databases => ['SQLite'],
02a7b8ac 26 sql_translator_args => { add_drop_table => 0 },
d50f2521 27 });
28
29 ok( $dm, 'DBIC::DH::DM::SQLT::Deprecated gets instantiated correctly' );
30
91557c90 31 $dm->prepare_deploy;
d50f2521 32
33 ok(
34 -f catfile(qw( t sql DBICVersion-Schema-1.0-SQLite.sql )),
35 '1.0 schema gets generated properly'
36 );
37
38 dies_ok {
39 $s->resultset('Foo')->create({
40 bar => 'frew',
41 })
42 } 'schema not deployed';
7d2a6974 43 $dm->deploy;
d50f2521 44 lives_ok {
45 $s->resultset('Foo')->create({
46 bar => 'frew',
47 })
48 } 'schema is deployed';
49}
50
51VERSION2: {
91557c90 52 use_ok 'DBICVersion_v2';
53 my $s = DBICVersion::Schema->connect(@connection);
d50f2521 54 my $dm = Deprecated->new({
55 schema => $s,
56 upgrade_directory => $sql_dir,
57 databases => ['SQLite'],
58 });
59
60 ok(
91557c90 61 $dm,
62 'DBIC::DH::DM::SQLT::Deprecated gets instantiated correctly w/ version 2.0'
63 );
02d58ac0 64
91557c90 65 $version = $s->schema_version;
66 $dm->prepare_deploy;
67 $dm->prepare_upgrade('1.0', $version, ['1.0', $version]);
68 dies_ok {
69 $s->resultset('Foo')->create({
70 bar => 'frew',
71 baz => 'frew',
72 })
73 } 'schema not deployed';
74 dies_ok {
75 $s->resultset('Foo')->create({
76 bar => 'frew',
77 baz => 'frew',
78 })
79 } 'schema not uppgrayyed';
80 $dm->upgrade_single_step(['1.0', $version]);
81 lives_ok {
82 $s->resultset('Foo')->create({
83 bar => 'frew',
84 baz => 'frew',
85 })
86 } 'schema is deployed';
d50f2521 87}
02d58ac0 88done_testing;
d50f2521 89#vim: ts=2 sw=2 expandtab