From: Peter Rabbitson Date: Sun, 30 May 2010 22:37:20 +0000 (+0000) Subject: Fix tests to survive the new SQLA bindtype checks X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=a17640f13daeeb9f3568cbbd6b70d837dd1e3e65;p=dbsrgits%2FDBIx-Class-Historic.git Fix tests to survive the new SQLA bindtype checks --- diff --git a/t/bind/order_by.t b/t/bind/order_by.t index 7a8bce6..f884739 100644 --- a/t/bind/order_by.t +++ b/t/bind/order_by.t @@ -3,6 +3,7 @@ use warnings; use Test::More; use Test::Exception; +use Data::Dumper::Concise; use lib qw(t/lib); use DBICTest; use DBIC::SqlMakerTest; @@ -25,7 +26,7 @@ sub test_order { { order_by => $args->{order_by}, having => - [ { read_count => { '>' => 5 } }, \[ 'read_count < ?', 8 ] ] + [ { read_count => { '>' => 5 } }, \[ 'read_count < ?', [ read_count => 8 ] ] ] } )->as_query, "( @@ -38,14 +39,13 @@ sub test_order { [ [qw(foo bar)], [qw(read_count 5)], - 8, + [qw(read_count 8)], $args->{bind} ? @{ $args->{bind} } : () ], - ); + ) || diag Dumper $args->{order_by}; }; - fail('Fail the unfinished is_same_sql_bind') if $@; } } @@ -61,46 +61,42 @@ my @tests = ( bind => [], }, { - order_by => { -desc => \[ 'colA LIKE ?', 'test' ] }, + order_by => { -desc => \[ 'colA LIKE ?', [ colA => 'test' ] ] }, order_req => 'colA LIKE ? DESC', - bind => [qw(test)], + bind => [ [ colA => 'test' ] ], }, { - order_by => \[ 'colA LIKE ? DESC', 'test' ], + order_by => \[ 'colA LIKE ? DESC', [ colA => 'test' ] ], order_req => 'colA LIKE ? DESC', - bind => [qw(test)], + bind => [ [ colA => 'test' ] ], }, { order_by => [ { -asc => \['colA'] }, - { -desc => \[ 'colB LIKE ?', 'test' ] }, - { -asc => \[ 'colC LIKE ?', 'tost' ] } + { -desc => \[ 'colB LIKE ?', [ colB => 'test' ] ] }, + { -asc => \[ 'colC LIKE ?', [ colC => 'tost' ] ] }, ], order_req => 'colA ASC, colB LIKE ? DESC, colC LIKE ? ASC', - bind => [qw(test tost)], + bind => [ [ colB => 'test' ], [ colC => 'tost' ] ], }, - - # (mo) this would be really really nice! - # (ribasushi) I don't think so, not writing it - patches welcome { + todo => 1, order_by => [ { -asc => 'colA' }, { -desc => { colB => { 'LIKE' => 'test' } } }, { -asc => { colC => { 'LIKE' => 'tost' } } } ], order_req => 'colA ASC, colB LIKE ? DESC, colC LIKE ? ASC', - bind => [ [ colB => 'test' ], [ colC => 'tost' ] ], # ??? - todo => 1, + bind => [ [ colB => 'test' ], [ colC => 'tost' ] ], }, { + todo => 1, order_by => { -desc => { colA => { LIKE => 'test' } } }, order_req => 'colA LIKE ? DESC', - bind => [qw(test)], - todo => 1, + bind => [ [ colA => 'test' ] ], }, ); -plan( tests => scalar @tests * 2 ); - test_order($_) for @tests; +done_testing; diff --git a/t/search/subquery.t b/t/search/subquery.t index 15ac08e..6dba559 100644 --- a/t/search/subquery.t +++ b/t/search/subquery.t @@ -16,12 +16,12 @@ my $cdrs = $schema->resultset('CD'); my @tests = ( { rs => $cdrs, - search => \[ "title = ? AND year LIKE ?", 'buahaha', '20%' ], + search => \[ "title = ? AND year LIKE ?", [ title => 'buahaha' ], [ year => '20%' ] ], attrs => { rows => 5 }, sqlbind => \[ "( SELECT me.cdid, me.artist, me.title, me.year, me.genreid, me.single_track FROM cd me WHERE (title = ? AND year LIKE ?) LIMIT 5)", - 'buahaha', - '20%', + [ title => 'buahaha' ], + [ year => '20%' ], ], }, @@ -157,8 +157,6 @@ my @tests = ( ); -plan tests => @tests * 2; - for my $i (0 .. $#tests) { my $t = $tests[$i]; for my $p (1, 2) { # repeat everything twice, make sure we do not clobber search arguments @@ -169,3 +167,5 @@ for my $i (0 .. $#tests) { ); } } + +done_testing;