X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F88result_set_column.t;h=69eb911dfaa13412f47a78fc5221cb5cd73f507a;hb=4e9fc3f33df616fb7340d05e304ff985b9cce9cb;hp=847483af0b4ea6d7f0bcd879fd2398807b26d1a3;hpb=472d7df3682bdb73a76af18c6c78e4596cb8aa73;p=dbsrgits%2FDBIx-Class.git diff --git a/t/88result_set_column.t b/t/88result_set_column.t index 847483a..69eb911 100644 --- a/t/88result_set_column.t +++ b/t/88result_set_column.t @@ -47,8 +47,8 @@ warnings_exist (sub { # test distinct propagation is_deeply ( - [$rs->search ({}, { distinct => 1 })->get_column ('year')->all], - [$rs_year->func('distinct')], + [sort $rs->search ({}, { distinct => 1 })->get_column ('year')->all], + [sort $rs_year->func('distinct')], 'distinct => 1 is passed through properly', ); @@ -153,4 +153,18 @@ is_deeply ( 'prefetch properly collapses amount of rows from get_column', ); +$rs->reset; +my $pob_rs = $rs->search({}, { + select => ['me.title', 'tracks.title'], + prefetch => 'tracks', + order_by => [{-asc => ['position']}], + group_by => ['me.title', 'tracks.title'], +}); +is_same_sql_bind ( + $pob_rs->get_column("me.title")->as_query, + '(SELECT me.title FROM (SELECT me.title, tracks.title FROM cd me LEFT JOIN track tracks ON tracks.cd = me.cdid GROUP BY me.title, tracks.title ORDER BY position ASC) me)', + [], + 'Correct SQL for prefetch/order_by/group_by' +); + done_testing;