X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F83cache.t;h=45f50c167be29d4e36a580032c9ce5b9a0d2f84d;hb=d2a3958e111673a0fd1a8f3a6d81700e5d351140;hp=39f782ab4f4c38b7479a55cf7279ec6c824cde8d;hpb=58d387fec14d2f92723ab0db1d64a18ee449639c;p=dbsrgits%2FDBIx-Class.git diff --git a/t/83cache.t b/t/83cache.t index 39f782a..45f50c1 100644 --- a/t/83cache.t +++ b/t/83cache.t @@ -5,14 +5,14 @@ use Test::More; use lib qw(t/lib); use DBICTest; -my $schema = DBICTest::init_schema(); +my $schema = DBICTest->init_schema(); my $queries; $schema->storage->debugcb( sub{ $queries++ } ); eval "use DBD::SQLite"; plan skip_all => 'needs DBD::SQLite for testing' if $@; -plan tests => 22; +plan tests => 23; my $rs = $schema->resultset("Artist")->search( { artistid => 1 } @@ -83,7 +83,7 @@ $artist = $rs->first; $rs->reset(); # make sure artist contains a related resultset for cds -is( ref $artist->{related_resultsets}->{cds}, 'DBIx::Class::ResultSet', 'artist has a related_resultset for cds' ); +isa_ok( $artist->{related_resultsets}{cds}, 'DBIx::Class::ResultSet', 'artist has a related_resultset for cds' ); # check if $artist->cds->get_cache is populated is( scalar @{$artist->cds->get_cache}, 3, 'cache for artist->cds contains correct number of records'); @@ -158,7 +158,15 @@ while( my $tag = $tags->next ) { push @objs, $tag->id; #warn "tag: ", $tag->ID; } -is_deeply( \@objs, [ 2, 5, 8 ], 'second cd has correct tags' ); +is_deeply( \@objs, [ 1 ], 'second cd has correct tags' ); + +$tags = $cds->next->tags; +@objs = (); +while( my $tag = $tags->next ) { + push @objs, $tag->id; #warn "tag: ", $tag->ID; +} + +is_deeply( \@objs, [ 2, 5, 8 ], 'third cd has correct tags' ); is( $queries, 0, 'no additional SQL statements while checking nested data' );