X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F02-instantiation.t;h=29fb08d2bb3b40ec3425a621c324d617f5026d41;hb=f344dd911ffeda3bc0b3bef6f275d27a2c31e8f9;hp=9765eff5a94bd6708604e3d9baa4f20015fc3b68;hpb=8636376a862a6e3cdc4a2b4368ef90924e2d7609;p=dbsrgits%2FDBIx-Class-DeploymentHandler.git diff --git a/t/02-instantiation.t b/t/02-instantiation.t index 9765eff..29fb08d 100644 --- a/t/02-instantiation.t +++ b/t/02-instantiation.t @@ -1,116 +1,10 @@ #!perl -use Test::More; -use Test::Exception; - use lib 't/lib'; -use DBICTest; +use DBICDHTest; use DBIx::Class::DeploymentHandler; -my $db = 'dbi:SQLite:db.db'; -my $sql_dir = 't/sql'; - -VERSION1: { - use_ok 'DBICVersion_v1'; - my $s = DBICVersion::Schema->connect($db); - ok($s, 'DBICVersion::Schema 1.0 instantiates correctly'); - my $handler = DBIx::Class::DeploymentHandler->new({ - upgrade_directory => $sql_dir, - schema => $s, - }); - - ok($handler, 'DBIx::Class::DeploymentHandler w/1.0 instantiates correctly'); - - my $version = $s->schema_version(); - $handler->create_ddl_dir( 'SQLite', $version, $sql_dir, 0); - ok(-e 't/sql/DBICVersion-Schema-1.0-SQLite.sql', 'DDL for 1.0 got created successfully'); - - dies_ok { - $s->resultset('Foo')->create({ - bar => 'frew', - }) - } 'schema not deployed'; - $handler->install; - lives_ok { - $s->resultset('Foo')->create({ - bar => 'frew', - }) - } 'schema is deployed'; -} - -VERSION2: { - use_ok 'DBICVersion_v2'; - my $s = DBICVersion::Schema->connect($db); - ok($s, 'DBICVersion::Schema 2.0 instantiates correctly'); - my $handler = DBIx::Class::DeploymentHandler->new({ - upgrade_directory => $sql_dir, - schema => $s, - }); - - ok($handler, 'DBIx::Class::DeploymentHandler w/2.0 instantiates correctly'); - - $version = $s->schema_version(); - $handler->create_ddl_dir( 'SQLite', $version, $sql_dir, 0); - $handler->create_ddl_dir( 'SQLite', $version, $sql_dir, '1.0'); - ok(-e 't/sql/DBICVersion-Schema-2.0-SQLite.sql', 'DDL for 2.0 got created successfully'); - ok(-e 't/sql/DBICVersion-Schema-1.0-2.0-SQLite.sql', 'DDL for migration from 1.0 to 2.0 got created successfully'); - dies_ok { - $s->resultset('Foo')->create({ - bar => 'frew', - baz => 'frew', - }) - } 'schema not deployed'; - #$handler->install('1.0'); - dies_ok { - $s->resultset('Foo')->create({ - bar => 'frew', - baz => 'frew', - }) - } 'schema not uppgrayyed'; - $handler->upgrade_single_step('1.0', '2.0'); - lives_ok { - $s->resultset('Foo')->create({ - bar => 'frew', - baz => 'frew', - }) - } 'schema is deployed'; -} - -VERSION3: { - use_ok 'DBICVersion_v3'; - my $s = DBICVersion::Schema->connect($db); - ok($s, 'DBICVersion::Schema 3.0 instantiates correctly'); - my $handler = DBIx::Class::DeploymentHandler->new({ - upgrade_directory => $sql_dir, - schema => $s, - }); - - ok($handler, 'DBIx::Class::DeploymentHandler w/3.0 instantiates correctly'); +use Test::More; - $version = $s->schema_version(); - $handler->create_ddl_dir( 'SQLite', $version, $sql_dir, 0); - $handler->create_ddl_dir( 'SQLite', $version, $sql_dir, '1.0'); - $handler->create_ddl_dir( 'SQLite', $version, $sql_dir, '2.0'); - ok(-e 't/sql/DBICVersion-Schema-3.0-SQLite.sql', 'DDL for 3.0 got created successfully'); - ok(-e 't/sql/DBICVersion-Schema-1.0-3.0-SQLite.sql', 'DDL for migration from 1.0 to 3.0 got created successfully'); - ok(-e 't/sql/DBICVersion-Schema-2.0-3.0-SQLite.sql', 'DDL for migration from 2.0 to 3.0 got created successfully'); - dies_ok { - $s->resultset('Foo')->create({ - bar => 'frew', - baz => 'frew', - biff => 'frew', - }) - } 'schema not deployed'; - $handler->upgrade; - lives_ok { - $s->resultset('Foo')->create({ - bar => 'frew', - baz => 'frew', - biff => 'frew', - }) - } 'schema is deployed'; -} +DBICDHTest::test_bundle(DBIx::Class::DeploymentHandler); done_testing; -__END__ - -vim: ts=2,sw=2,expandtab