Commit | Line | Data |
82958127 |
1 | package TreeTest::Schema; |
2 | use strict; |
3 | use warnings; |
4 | |
5 | use base qw( DBIx::Class::Schema ); |
6 | |
7 | __PACKAGE__->load_classes(); |
8 | |
9 | sub connect { |
10 | my $self = shift; |
11 | |
12 | my $db_file = 't/var/test.db'; |
13 | |
14 | unlink($db_file) if -e $db_file; |
15 | unlink($db_file . '-journal') if -e $db_file . '-journal'; |
16 | mkdir("t/var") unless -d "t/var"; |
17 | |
18 | my $dsn = "dbi:SQLite:$db_file"; |
19 | my $schema = $self->next::method( $dsn ); |
20 | |
21 | $schema->storage->on_connect_do([ "PRAGMA synchronous = OFF" ]); |
22 | |
23 | my $dbh = $schema->storage->dbh; |
24 | open SQL, "t/lib/sqlite.sql"; |
25 | my $sql; |
26 | { local $/ = undef; $sql = <SQL>; } |
27 | close SQL; |
28 | $dbh->do($_) for split(/\n\n/, $sql); |
29 | |
30 | $schema->storage->dbh->do("PRAGMA synchronous = OFF"); |
31 | |
32 | return $schema; |
33 | } |
34 | |
35 | 1; |