5 if (defined $ENV{DBI_DSN}) {
8 plan skip_all => 'cannot test without DB info';
11 my $dbh1 = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
12 {RaiseError => 1, AutoCommit => 0}
18 my $dbh2 = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
19 {RaiseError => 1, AutoCommit => 0}
25 $dbh1->do(q{DELETE FROM test});
30 my $rows = ($dbh1->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
32 'fetch on empty table from dbh1'
35 $rows = ($dbh2->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
37 'fetch on empty table from dbh2'
40 $dbh1->do(q{INSERT INTO test (id, name, val) VALUES (1, 'foo', 'horse')});
41 $dbh1->do(q{INSERT INTO test (id, name, val) VALUES (2, 'bar', 'chicken')});
42 $dbh1->do(q{INSERT INTO test (id, name, val) VALUES (3, 'baz', 'pig')});
44 $rows = ($dbh1->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
46 'fetch three rows on dbh1'
49 $rows = ($dbh2->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
51 'fetch on dbh2 before commit'
58 $rows = ($dbh1->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
60 'fetch on dbh1 after commit'
63 $rows = ($dbh2->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
65 'fetch on dbh2 after commit'
68 ok($dbh1->do(q{DELETE FROM test}),
72 $rows = ($dbh1->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
74 'fetch on empty table from dbh1'
77 $rows = ($dbh2->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
79 'fetch on from dbh2 without commit'
86 $rows = ($dbh1->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
88 'fetch on from dbh1 after rollback'
91 $rows = ($dbh2->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
93 'fetch on from dbh2 after rollback'
96 ok($dbh1->disconnect(),
100 ok($dbh2->disconnect(),