Commit | Line | Data |
996be9ee |
1 | package make_dbictest_db; |
2 | |
3 | use strict; |
4 | use warnings; |
5 | use DBI; |
c213fd3d |
6 | use dbixcsl_test_dir qw/$tdir/; |
996be9ee |
7 | |
8 | eval { require DBD::SQLite }; |
9 | my $class = $@ ? 'SQLite2' : 'SQLite'; |
10 | |
c213fd3d |
11 | my $fn = "$tdir/dbictest.db"; |
996be9ee |
12 | |
13 | unlink($fn); |
fa994d3c |
14 | our $dsn = "dbi:$class:dbname=$fn"; |
15 | my $dbh = DBI->connect($dsn); |
be9f4d42 |
16 | $dbh->do('PRAGMA SYNCHRONOUS = OFF'); |
996be9ee |
17 | |
18 | $dbh->do($_) for ( |
19 | q|CREATE TABLE foo ( |
20 | fooid INTEGER PRIMARY KEY, |
f170d55b |
21 | footext TEXT DEFAULT 'footext', |
22 | foodt TIMESTAMP DEFAULT CURRENT_TIMESTAMP |
996be9ee |
23 | )|, |
24 | q|CREATE TABLE bar ( |
25 | barid INTEGER PRIMARY KEY, |
26 | fooref INTEGER REFERENCES foo(fooid) |
27 | )|, |
f170d55b |
28 | q|INSERT INTO foo (fooid, footext) VALUES (1,'Foo text for number 1')|, |
29 | q|INSERT INTO foo (fooid, footext) VALUES (2,'Foo record associated with the Bar with barid 3')|, |
30 | q|INSERT INTO foo (fooid, footext) VALUES (3,'Foo text for number 3')|, |
31 | q|INSERT INTO foo (fooid, footext) VALUES (4,'Foo text for number 4')|, |
996be9ee |
32 | q|INSERT INTO bar VALUES (1,4)|, |
33 | q|INSERT INTO bar VALUES (2,3)|, |
34 | q|INSERT INTO bar VALUES (3,2)|, |
35 | q|INSERT INTO bar VALUES (4,1)|, |
36 | ); |
37 | |
6d358d58 |
38 | END { unlink($fn) unless $ENV{SCHEMA_LOADER_TESTS_NOCLEANUP}; } |
996be9ee |
39 | |
40 | 1; |