[Bast-commits] r7025 - in branches/DBIx-Class-Schema-Loader/mssql_tweaks: lib/DBIx/Class/Schema/Loader t t/lib

caelum at dev.catalyst.perl.org caelum at dev.catalyst.perl.org
Fri Jul 10 20:53:09 GMT 2009


Author: caelum
Date: 2009-07-10 20:53:09 +0000 (Fri, 10 Jul 2009)
New Revision: 7025

Modified:
   branches/DBIx-Class-Schema-Loader/mssql_tweaks/lib/DBIx/Class/Schema/Loader/Base.pm
   branches/DBIx-Class-Schema-Loader/mssql_tweaks/t/13db2_common.t
   branches/DBIx-Class-Schema-Loader/mssql_tweaks/t/lib/dbixcsl_common_tests.pm
Log:
make tests pass

Modified: branches/DBIx-Class-Schema-Loader/mssql_tweaks/lib/DBIx/Class/Schema/Loader/Base.pm
===================================================================
--- branches/DBIx-Class-Schema-Loader/mssql_tweaks/lib/DBIx/Class/Schema/Loader/Base.pm	2009-07-10 17:37:53 UTC (rev 7024)
+++ branches/DBIx-Class-Schema-Loader/mssql_tweaks/lib/DBIx/Class/Schema/Loader/Base.pm	2009-07-10 20:53:09 UTC (rev 7025)
@@ -688,16 +688,19 @@
         $self->_dbic_stmt($table_class,'add_columns',@$cols);
     }
     else {
-        for my $col (keys %$col_info) {
-            $col_info->{$col}{accessor} = lc $col
-                if $col ne lc($col);
+        if ($self->_is_case_sensitive) {
+            for my $col (keys %$col_info) {
+                $col_info->{$col}{accessor} = lc $col
+                    if $col ne lc($col);
+            }
+        } else {
+            $col_info = { map { lc($_), $col_info->{$_} } keys %$col_info };
         }
 
         my $fks = $self->_table_fk_info($table);
 
         for my $fkdef (@$fks) {
             for my $col (@{ $fkdef->{local_columns} }) {
-                $col = lc $col unless $self->_is_case_sensitive;
                 $col_info->{$col}{is_foreign_key} = 1;
             }
         }

Modified: branches/DBIx-Class-Schema-Loader/mssql_tweaks/t/13db2_common.t
===================================================================
--- branches/DBIx-Class-Schema-Loader/mssql_tweaks/t/13db2_common.t	2009-07-10 17:37:53 UTC (rev 7024)
+++ branches/DBIx-Class-Schema-Loader/mssql_tweaks/t/13db2_common.t	2009-07-10 20:53:09 UTC (rev 7025)
@@ -12,6 +12,7 @@
     dsn            => $dsn,
     user           => $user,
     password       => $password,
+    null           => '',
 );
 
 if( !$dsn || !$user ) {

Modified: branches/DBIx-Class-Schema-Loader/mssql_tweaks/t/lib/dbixcsl_common_tests.pm
===================================================================
--- branches/DBIx-Class-Schema-Loader/mssql_tweaks/t/lib/dbixcsl_common_tests.pm	2009-07-10 17:37:53 UTC (rev 7024)
+++ branches/DBIx-Class-Schema-Loader/mssql_tweaks/t/lib/dbixcsl_common_tests.pm	2009-07-10 20:53:09 UTC (rev 7025)
@@ -27,6 +27,9 @@
 
     # Only MySQL uses this
     $self->{innodb} ||= '';
+
+    # DB2 doesn't support this
+    $self->{null} = 'NULL' unless defined $self->{null};
     
     $self->{verbose} = $ENV{TEST_VERBOSE} || 0;
 
@@ -391,7 +394,11 @@
         isa_ok( $rs_rel4->first, $class4);
 
         # find on multi-col pk
-        my $obj5 = $rsobj5->find({id1 => 1, iD2 => 1});
+        my $obj5 = 
+	    eval { $rsobj5->find({id1 => 1, iD2 => 1}) } ||
+	    eval { $rsobj5->find({id1 => 1, id2 => 1}) };
+	die $@ if $@;
+
         is( $obj5->id2, 1, "Find on multi-col PK" );
 
         # mulit-col fk def
@@ -956,7 +963,7 @@
           CREATE TABLE loader_test32 (
             id INTEGER NOT NULL PRIMARY KEY,
             rel1 INTEGER NOT NULL,
-            rel2 INTEGER NULL,
+            rel2 INTEGER $self->{null},
             FOREIGN KEY (rel1) REFERENCES loader_test31(id),
             FOREIGN KEY (rel2) REFERENCES loader_test31(id)
           ) $self->{innodb}
@@ -976,7 +983,7 @@
           CREATE TABLE loader_test34 (
             id INTEGER NOT NULL PRIMARY KEY,
             rel1 INTEGER NOT NULL,
-            rel2 INTEGER NULL,
+            rel2 INTEGER $self->{null},
             FOREIGN KEY (id,rel1) REFERENCES loader_test33(id1,id2),
             FOREIGN KEY (id,rel2) REFERENCES loader_test33(id1,id2)
           ) $self->{innodb}
@@ -989,7 +996,7 @@
             CREATE TABLE loader_test10 (
                 id10 $self->{auto_inc_pk},
                 subject VARCHAR(8),
-                loader_test11 INTEGER NULL
+                loader_test11 INTEGER $self->{null}
             ) $self->{innodb}
         },
         $make_auto_inc->(qw/loader_test10 id10/),
@@ -998,7 +1005,7 @@
             CREATE TABLE loader_test11 (
                 id11 $self->{auto_inc_pk},
                 message VARCHAR(8) DEFAULT 'foo',
-                loader_test10 INTEGER NULL,
+                loader_test10 INTEGER $self->{null},
                 FOREIGN KEY (loader_test10) REFERENCES loader_test10 (id10)
             ) $self->{innodb}
         },




More information about the Bast-commits mailing list