No fancy methods for the default_jointype, as we don't have proper sqlahacks inherita...
Peter Rabbitson [Wed, 2 Sep 2009 10:42:39 +0000 (10:42 +0000)]
lib/DBIx/Class/SQLAHacks.pm
t/71mysql.t

index 3a0d1f6..93c1009 100644 (file)
@@ -517,7 +517,7 @@ sub _recurse_from {
       $join_type =~ s/^\s+ | \s+$//xg;
     }
 
-    $join_type = $self->_default_jointype if not defined $join_type;
+    $join_type = $self->{_default_jointype} if not defined $join_type;
 
     my $join_clause = sprintf ('%s JOIN ',
       $join_type ?  ' ' . uc($join_type) : ''
@@ -534,8 +534,6 @@ sub _recurse_from {
   return join('', @sqlf);
 }
 
-sub _default_jointype {};
-
 sub _fold_sqlbind {
   my ($self, $sqlbind) = @_;
 
index c58c142..c9e03af 100644 (file)
@@ -174,8 +174,7 @@ lives_ok { $cd->set_producers ([ $producer ]) } 'set_relationship doesnt die';
   }, 'join does not throw (mysql 3 test)';
 
   # induce a jointype override, make sure it works even if we don't have mysql3
-  no warnings qw/redefine/;
-  local *DBIx::Class::SQLAHacks::MySQL::_default_jointype = sub {'inner'};
+  local $schema->storage->sql_maker->{_default_jointype} = 'inner';
   is_same_sql_bind (
     $rs->as_query,
     '(