[Jifty-commit] r6677 - Jifty-DBI/branches/tisql/t/tisql

Jifty commits jifty-commit at lists.jifty.org
Wed Mar 18 22:44:38 EDT 2009


Author: ruz
Date: Wed Mar 18 22:44:38 2009
New Revision: 6677

Modified:
   Jifty-DBI/branches/tisql/t/tisql/searches_basic.t

Log:
* voilya, not strings based API works

Modified: Jifty-DBI/branches/tisql/t/tisql/searches_basic.t
==============================================================================
--- Jifty-DBI/branches/tisql/t/tisql/searches_basic.t	(original)
+++ Jifty-DBI/branches/tisql/t/tisql/searches_basic.t	Wed Mar 18 22:44:38 2009
@@ -9,13 +9,15 @@
 BEGIN { require "t/utils.pl" }
 our (@available_drivers);
 
-use constant TESTS_PER_DRIVER => 36;
+use constant TESTS_PER_DRIVER => 46;
 
 my $total = scalar(@available_drivers) * TESTS_PER_DRIVER;
 plan tests => $total;
 
 use Data::Dumper;
 
+use Jifty::DBI::Tisql qw(Q C);
+
 foreach my $d ( @available_drivers ) {
 SKIP: {
     unless( has_schema( 'TestApp', $d ) ) {
@@ -41,15 +43,20 @@
 
     run_our_cool_tests(
         $users_obj,
-        ".login = 'a'" => { 'aa' => 1, 'ab' => 1, 'ac' => 1 },
-        ".login != 'a'" => { 'ba' => 1, 'bb' => 1, 'bc' => 1, 'ca' => 1, 'cb' => 1, 'cc' => 1 },
+        ".login = 'a'"       => { 'aa' => 1, 'ab' => 1, 'ac' => 1 },
+        Q(C('login') => 'a') => { 'aa' => 1, 'ab' => 1, 'ac' => 1 },
+
+        ".login != 'a'"              => { 'ba' => 1, 'bb' => 1, 'bc' => 1, 'ca' => 1, 'cb' => 1, 'cc' => 1 },
+        Q(C('login') => '!=' => 'a') => { 'ba' => 1, 'bb' => 1, 'bc' => 1, 'ca' => 1, 'cb' => 1, 'cc' => 1 }, 
+
+        ".login = 'a' AND .login = 'b'"             => { },
+        Q(C('login') => 'a') & Q(C('login') => 'b') => { },
 
-        ".login = 'a' AND .login = 'b'" 
-            => { },
-        ".login != 'a' AND .login = 'b'" 
-            => { ba => 1, bb => 1, bc => 1 },
-        ".login != 'a' AND .login != 'b'" 
-            => { ca => 1, cb => 1, cc => 1 },
+        ".login != 'a' AND .login = 'b'"                => { ba => 1, bb => 1, bc => 1 },
+        Q(C('login'), '!=', 'a') & Q(C('login') => 'b') => { ba => 1, bb => 1, bc => 1 },
+
+        ".login != 'a' AND .login != 'b'"                   => { ca => 1, cb => 1, cc => 1 },
+        Q(C('login'), '!=', 'a') & Q(C('login'), '!=', 'b') => { ca => 1, cb => 1, cc => 1 }, 
 
         ".login = 'a' OR .login = 'b'" 
             => { aa => 1, ab => 1, ac => 1, ba => 1, bb => 1, bc => 1 },
@@ -84,8 +91,8 @@
 
 sub run_our_cool_tests {
     my $collection = shift;
-    my %tests = @_;
-    while (my ($q, $check) = each %tests ) {
+    my @tests = @_;
+    while ( my ($q, $check) = splice @tests, 0, 2 ) {
         $collection->clean_slate;
         $collection->tisql->query( $q );
         my $expected_count = scalar grep $_, values %$check;
@@ -102,6 +109,7 @@
             or diag "wrong query: ". $collection->build_select_query;
     }
 }
+
 1;
 
 


More information about the Jifty-commit mailing list