Moving towards instance-based schemas
[dbsrgits/DBIx-Class.git] / t / lib / DBICTest.pm
index 09a05b6..bcca718 100755 (executable)
@@ -8,9 +8,11 @@ unlink($db_file) if -e $db_file;
 unlink($db_file . "-journal") if -e $db_file . "-journal";
 mkdir("t/var") unless -d "t/var";
 
-DBICTest::Schema->compose_connection('DBICTest' => "dbi:SQLite:${db_file}");
+my $dsn = "dbi:SQLite:${db_file}";
 
-my $dbh = DBICTest::_db->storage->dbh;
+my $schema = DBICTest::Schema->compose_connection('DBICTest' => $dsn);
+
+my $dbh = DBI->connect($dsn);
 
 my $sql = <<EOSQL;
 CREATE TABLE artist (artistid INTEGER NOT NULL PRIMARY KEY, name VARCHAR);
@@ -42,6 +44,10 @@ CREATE TABLE self_ref (id INTEGER NOT NULL PRIMARY KEY,
 CREATE TABLE self_ref_alias (self_ref INTEGER NOT NULL, alias INTEGER NOT NULL,
                       PRIMARY KEY( self_ref, alias ) );
 
+CREATE TABLE producer (producerid INTEGER NOT NULL PRIMARY KEY, name VARCHAR);
+
+CREATE TABLE cd_to_producer (cd INTEGER NOT NULL, producer INTEGER NOT NULL);
+
 INSERT INTO artist (artistid, name) VALUES (1, 'Caterwauler McCrae');
 
 INSERT INTO artist (artistid, name) VALUES (2, 'Random Boy Band');
@@ -106,13 +112,20 @@ INSERT INTO onekey (id, artist, cd) VALUES (2, 1, 2);
 
 INSERT INTO onekey (id, artist, cd) VALUES (3, 2, 2);
 
-INSERT INTO self_ref(id, name) VALUES (1, 'First');
+INSERT INTO self_ref (id, name) VALUES (1, 'First');
+
+INSERT INTO self_ref (id, name) VALUES (2, 'Second');
 
-INSERT INTO self_ref(id, name) VALUES (2, 'Second');
+INSERT INTO self_ref_alias (self_ref, alias) VALUES (1, 2);
+
+INSERT INTO producer (producerid, name) VALUES (1, 'Matt S Trout');
+
+INSERT INTO cd_to_producer (cd, producer) VALUES (1, 1);
 
-INSERT INTO self_ref_alias(self_ref, alias) VALUES (1, 2);
 EOSQL
 
 $dbh->do($_) for split(/\n\n/, $sql);
 
+$schema->storage->dbh->do("PRAGMA synchronous = OFF");
+
 1;