Speed up sqlite-based tests (disable synchronous disk writes)
[dbsrgits/DBIx-Class-Schema-Loader.git] / t / lib / make_dbictest_db.pm
CommitLineData
996be9ee 1package make_dbictest_db;
2
3use strict;
4use warnings;
5use DBI;
6
7eval { require DBD::SQLite };
8my $class = $@ ? 'SQLite2' : 'SQLite';
9
10my $fn = './t/dbictest.db';
11
12unlink($fn);
fa994d3c 13our $dsn = "dbi:$class:dbname=$fn";
14my $dbh = DBI->connect($dsn);
be9f4d42 15$dbh->do('PRAGMA SYNCHRONOUS = OFF');
996be9ee 16
17$dbh->do($_) for (
18 q|CREATE TABLE foo (
19 fooid INTEGER PRIMARY KEY,
f170d55b 20 footext TEXT DEFAULT 'footext',
21 foodt TIMESTAMP DEFAULT CURRENT_TIMESTAMP
996be9ee 22 )|,
23 q|CREATE TABLE bar (
24 barid INTEGER PRIMARY KEY,
25 fooref INTEGER REFERENCES foo(fooid)
26 )|,
f170d55b 27 q|INSERT INTO foo (fooid, footext) VALUES (1,'Foo text for number 1')|,
28 q|INSERT INTO foo (fooid, footext) VALUES (2,'Foo record associated with the Bar with barid 3')|,
29 q|INSERT INTO foo (fooid, footext) VALUES (3,'Foo text for number 3')|,
30 q|INSERT INTO foo (fooid, footext) VALUES (4,'Foo text for number 4')|,
996be9ee 31 q|INSERT INTO bar VALUES (1,4)|,
32 q|INSERT INTO bar VALUES (2,3)|,
33 q|INSERT INTO bar VALUES (3,2)|,
34 q|INSERT INTO bar VALUES (4,1)|,
35);
36
37END { unlink($fn); }
38
391;