use warnings;
use Test::More;
-use Test::Exception;
+
use lib 't/lib';
+BEGIN {
+ require DBICTest::RunMode;
+ plan( skip_all => "Skipping test on plain module install" )
+ if DBICTest::RunMode->is_plain;
+}
-use File::Temp ();
+use Test::Exception;
use DBICTest;
-use DBICTest::Schema;
+use File::Temp ();
plan tests => 2;
-my $wait_for = 10; # how many seconds to wait
+my $wait_for = 120; # how many seconds to wait
-$TODO = "This seems to be a DBD::SQLite problem, don't test for now";
+# don't lock anything - this is a tempfile anyway
+$ENV{DBICTEST_LOCK_HOLDER} = -1;
for my $close (0,1) {
- my $tmp = File::Temp->new( UNLINK => 1, TMPDIR => 1, SUFFIX => '.sqlite' );
+ my $tmp = File::Temp->new(
+ UNLINK => 1,
+ DIR => 't/var',
+ SUFFIX => '.db',
+ TEMPLATE => 'DBIxClass-XXXXXX',
+ EXLOCK => 0, # important for BSD and derivatives
+ );
+
my $tmp_fn = $tmp->filename;
close $tmp if $close;
lives_ok (sub {
my $schema = DBICTest::Schema->connect ("DBI:SQLite:$tmp_fn");
+ $schema->storage->dbh_do(sub { $_[1]->do('PRAGMA synchronous = OFF') });
DBICTest->deploy_schema ($schema);
DBICTest->populate_schema ($schema);
});