Introducing DBIx::Class::Schema::SanityChecker
[dbsrgits/DBIx-Class.git] / t / prefetch / false_colvalues.t
CommitLineData
c0329273 1BEGIN { do "./t/lib/ANFANG.pm" or die ( $@ || $! ) }
2
f4e13e13 3use warnings;
4use strict;
5
6use Test::More;
52864fbd 7use Test::Deep;
f4e13e13 8
c0329273 9
f4e13e13 10use DBICTest;
11
3d3e99db 12my $schema = DBICTest->init_schema( no_populate => 1 );
f4e13e13 13
14$schema->resultset('CD')->create({
3d3e99db 15 cdid => 0, title => '', year => 0, genreid => 0, single_track => 0, artist => {
16 artistid => 0, name => '', rank => 0, charfield => 0,
17 },
f4e13e13 18});
19
49eeb48d 20$schema->is_executed_querycount( sub {
21 my $cd = $schema->resultset('CD')->search( {}, { prefetch => 'artist' })->next;
22
23 cmp_deeply
24 { $cd->get_columns },
25 { artist => 0, cdid => 0, genreid => 0, single_track => 0, title => '', year => 0 },
26 'Expected CD columns present',
27 ;
28
29 cmp_deeply
30 { $cd->artist->get_columns },
31 { artistid => 0, charfield => 0, name => "", rank => 0 },
32 'Expected Artist columns present',
33 ;
34}, 1, 'Only one query fired - prefetch worked' );
f4e13e13 35
36done_testing;