Commit | Line | Data |
25546937 |
1 | use strict; |
2 | use warnings; |
3 | |
25546937 |
4 | use Test::More; |
5 | use lib qw(t/lib); |
6 | use DBICTest; |
7 | use Data::Dumper; |
8 | use DBIC::SqlMakerTest; |
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 | |
d68d84f8 |
24 | |
9ae966b9 |
25 | # measure pings around deploy() separately |
d68d84f8 |
26 | my $schema = DBICTest->init_schema( sqlite_use_file => 1, no_populate => 1 ); |
27 | |
9ae966b9 |
28 | is ($ping_count, 0, 'no _ping() calls during deploy'); |
29 | $ping_count = 0; |
30 | |
31 | |
d68d84f8 |
32 | |
33 | DBICTest->populate_schema ($schema); |
34 | |
28be49a6 |
35 | # perform some operations and make sure they don't ping |
25546937 |
36 | |
28be49a6 |
37 | $schema->resultset('CD')->create({ |
38 | cdid => 6, artist => 3, title => 'mtfnpy', year => 2009 |
39 | }); |
25546937 |
40 | |
28be49a6 |
41 | $schema->resultset('CD')->create({ |
42 | cdid => 7, artist => 3, title => 'mtfnpy2', year => 2009 |
43 | }); |
25546937 |
44 | |
28be49a6 |
45 | $schema->storage->_dbh->disconnect; |
25546937 |
46 | |
28be49a6 |
47 | $schema->resultset('CD')->create({ |
48 | cdid => 8, artist => 3, title => 'mtfnpy3', year => 2009 |
49 | }); |
25546937 |
50 | |
28be49a6 |
51 | $schema->storage->_dbh->disconnect; |
25546937 |
52 | |
28be49a6 |
53 | $schema->txn_do(sub { |
54 | $schema->resultset('CD')->create({ |
55 | cdid => 9, artist => 3, title => 'mtfnpy4', year => 2009 |
56 | }); |
57 | }); |
25546937 |
58 | |
59 | is $ping_count, 0, 'no _ping() calls'; |
d68d84f8 |
60 | |
61 | done_testing; |