remove dbic option from sybase test that is no longer necessary
[dbsrgits/DBIx-Class-Schema-Loader.git] / lib / DBIx / Class / Schema / Loader / Base.pm
index ff336a0..42b0515 100644 (file)
@@ -16,7 +16,7 @@ use File::Temp qw//;
 use Class::Unload;
 require DBIx::Class;
 
-our $VERSION = '0.04999_07';
+our $VERSION = '0.04999_08';
 
 __PACKAGE__->mk_ro_accessors(qw/
                                 schema
@@ -675,7 +675,7 @@ sub _setup_src_meta {
     my $table_name = $table;
     my $name_sep   = $self->schema->storage->sql_maker->name_sep;
 
-    if ($table_name =~ /\Q$name_sep\E/) {
+    if ($name_sep && $table_name =~ /\Q$name_sep\E/) {
         $table_name = \ $self->_quote_table_name($table_name);
     }
 
@@ -688,16 +688,19 @@ sub _setup_src_meta {
         $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;
             }
         }
@@ -833,6 +836,8 @@ sub _quote_table_name {
 
     my $qt = $self->schema->storage->sql_maker->quote_char;
 
+    return $table unless $qt;
+
     if (ref $qt) {
         return $qt->[0] . $table . $qt->[1];
     }