1use strict; 2use warnings; 3 4use Test::More; 5 6use lib qw(t/lib); 7 8use DBICTest; 9 10my $schema = DBICTest->init_schema(); 11 12my $rs = $schema->resultset ('CD')->search ({}, { 13 select => [ 14 { substr => [ 'title', 1, 1 ], -as => 'initial' }, 15 { count => '*' }, 16 ], 17 as => [qw/title_initial cnt/], 18 group_by => ['initial'], 19 order_by => { -desc => 'initial' }, 20 result_class => 'DBIx::Class::ResultClass::HashRefInflator', 21}); 22 23is_deeply ( 24 [$rs->all], 25 [ 26 { title_initial => 'S', cnt => '1' }, 27 { title_initial => 'G', cnt => '1' }, 28 { title_initial => 'F', cnt => '1' }, 29 { title_initial => 'C', cnt => '2' }, 30 ], 31 'Correct result', 32); 33 34is ($rs->count, 4, 'Correct count'); 35 36done_testing; 37