Introduce GOVERNANCE document and empty RESOLUTIONS file.
[dbsrgits/DBIx-Class.git] / t / storage / ping_count.t
1 BEGIN { do "./t/lib/ANFANG.pm" or die ( $@ || $! ) }
2
3 use strict;
4 use warnings;
5
6 use Test::More;
7
8 use DBICTest;
9
10 my $ping_count = 0;
11
12 {
13   local $SIG{__WARN__} = sub {};
14   require DBIx::Class::Storage::DBI;
15
16   my $ping = \&DBIx::Class::Storage::DBI::_ping;
17
18   *DBIx::Class::Storage::DBI::_ping = sub {
19     $ping_count++;
20     goto &$ping;
21   };
22 }
23
24
25 # measure pings around deploy() separately
26 my $schema = DBICTest->init_schema( sqlite_use_file => 1, no_populate => 1 );
27
28 is ($ping_count, 0, 'no _ping() calls during deploy');
29 $ping_count = 0;
30
31
32
33 DBICTest->populate_schema ($schema);
34
35 # perform some operations and make sure they don't ping
36
37 $schema->resultset('CD')->create({
38   cdid => 6, artist => 3, title => 'mtfnpy', year => 2009
39 });
40
41 $schema->resultset('CD')->create({
42   cdid => 7, artist => 3, title => 'mtfnpy2', year => 2009
43 });
44
45 $schema->storage->_dbh->disconnect;
46
47 $schema->resultset('CD')->create({
48   cdid => 8, artist => 3, title => 'mtfnpy3', year => 2009
49 });
50
51 $schema->storage->_dbh->disconnect;
52
53 $schema->txn_do(sub {
54  $schema->resultset('CD')->create({
55    cdid => 9, artist => 3, title => 'mtfnpy4', year => 2009
56  });
57 });
58
59 is $ping_count, 0, 'no _ping() calls';
60
61 done_testing;