From: Peter Rabbitson <ribasushi@cpan.org>
Date: Sun, 30 May 2010 22:37:20 +0000 (+0000)
Subject: Fix tests to survive the new SQLA bindtype checks
X-Git-Tag: v0.08122~49
X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=a17640f13daeeb9f3568cbbd6b70d837dd1e3e65;p=dbsrgits%2FDBIx-Class.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;