X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Fprefetch%2Fjoin_type.t;h=5165e09b6141a8e4a51f49769e482d24c23aa833;hb=HEAD;hp=7b90c874058c2d14e1987a206bad6688205b32b1;hpb=d2fcb9b3612958ecc794acae77520f3da06d3c5b;p=dbsrgits%2FDBIx-Class.git diff --git a/t/prefetch/join_type.t b/t/prefetch/join_type.t index 7b90c87..5165e09 100644 --- a/t/prefetch/join_type.t +++ b/t/prefetch/join_type.t @@ -1,10 +1,11 @@ +BEGIN { do "./t/lib/ANFANG.pm" or die ( $@ || $! ) } + use warnings; +use strict; use Test::More; -use Test::Exception; -use lib qw(t/lib); -use DBIC::SqlMakerTest; -use DBICTest; + +use DBICTest ':DiffSQL'; my $schema = DBICTest->init_schema(); @@ -20,11 +21,16 @@ my $nulls = { # make sure null-prefetches do not screw with the final sql: for my $type (keys %$nulls) { -# is_same_sql_bind ( -# $cds->search({}, { prefetch => { artist => $nulls->{$type} } })->as_query, -# $cds->as_query, -# "same sql with null $type prefetch" -# ); + is_same_sql_bind ( + $cds->search({}, { prefetch => { artist => $nulls->{$type} } })->as_query, + '( SELECT me.cdid, me.artist, me.title, me.year, me.genreid, me.single_track, + artist.artistid, artist.name, artist.rank, artist.charfield + FROM cd me + JOIN artist artist + ON artist.artistid = me.artist + )', [], + "same sql with null $type prefetch" + ); } # make sure left join is carried only starting from the first has_many @@ -39,7 +45,6 @@ is_same_sql_bind ( JOIN artist artist ON artist.artistid = me.artist LEFT JOIN cd cds ON cds.artist = artist.artistid LEFT JOIN artist artist_2 ON artist_2.artistid = cds.artist - ORDER BY cds.artist, cds.year ASC )', [], );