aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/active_relation/relations/insertion.rb2
-rw-r--r--lib/active_relation/relations/relation.rb4
-rw-r--r--lib/active_relation/relations/update.rb2
-rw-r--r--spec/active_relation/unit/relations/insertion_spec.rb8
-rw-r--r--spec/active_relation/unit/relations/relation_spec.rb4
-rw-r--r--spec/active_relation/unit/relations/update_spec.rb8
6 files changed, 14 insertions, 14 deletions
diff --git a/lib/active_relation/relations/insertion.rb b/lib/active_relation/relations/insertion.rb
index 901ff6eb70..30de6819f1 100644
--- a/lib/active_relation/relations/insertion.rb
+++ b/lib/active_relation/relations/insertion.rb
@@ -3,7 +3,7 @@ module ActiveRelation
attr_reader :record
def initialize(relation, record)
- @relation, @record = relation, record
+ @relation, @record = relation, record.bind(relation)
end
def to_sql(formatter = nil)
diff --git a/lib/active_relation/relations/relation.rb b/lib/active_relation/relations/relation.rb
index 36c13bec51..eebfd48e30 100644
--- a/lib/active_relation/relations/relation.rb
+++ b/lib/active_relation/relations/relation.rb
@@ -63,11 +63,11 @@ module ActiveRelation
module Writes
def insert(record)
- session.create Insertion.new(self, record.bind(self)); self
+ session.create Insertion.new(self, record); self
end
def update(assignments)
- session.update Update.new(self, assignments.bind(self)); self
+ session.update Update.new(self, assignments); self
end
def delete
diff --git a/lib/active_relation/relations/update.rb b/lib/active_relation/relations/update.rb
index 7eb78d5473..46aafd38a5 100644
--- a/lib/active_relation/relations/update.rb
+++ b/lib/active_relation/relations/update.rb
@@ -3,7 +3,7 @@ module ActiveRelation
attr_reader :assignments
def initialize(relation, assignments)
- @relation, @assignments = relation, assignments
+ @relation, @assignments = relation, assignments.bind(relation)
end
def to_sql(formatter = nil)
diff --git a/spec/active_relation/unit/relations/insertion_spec.rb b/spec/active_relation/unit/relations/insertion_spec.rb
index b74ec6c7cb..e01e7792e2 100644
--- a/spec/active_relation/unit/relations/insertion_spec.rb
+++ b/spec/active_relation/unit/relations/insertion_spec.rb
@@ -9,7 +9,7 @@ module ActiveRelation
describe '#to_sql' do
describe 'when given values whose types correspond to the types of the attributes' do
before do
- @insertion = Insertion.new(@relation, @relation[:name] => "nick".bind(@relation))
+ @insertion = Insertion.new(@relation, @relation[:name] => "nick")
end
it 'manufactures sql inserting data' do
@@ -23,7 +23,7 @@ module ActiveRelation
describe 'when given values whose types differ from from the types of the attributes' do
before do
- @insertion = Insertion.new(@relation, @relation[:id] => '1-asdf'.bind(@relation))
+ @insertion = Insertion.new(@relation, @relation[:id] => '1-asdf')
end
it 'manufactures sql inserting data' do
@@ -37,7 +37,7 @@ module ActiveRelation
describe 'when given values whose types correspond to the type of the attribtues' do
before do
- @insertion = Insertion.new(@relation, @relation[:name] => "nick".bind(@relation))
+ @insertion = Insertion.new(@relation, @relation[:name] => "nick")
end
it 'manufactures sql inserting data' do
@@ -52,7 +52,7 @@ module ActiveRelation
describe '#call' do
before do
- @insertion = Insertion.new(@relation, @relation[:name] => "nick".bind(@relation))
+ @insertion = Insertion.new(@relation, @relation[:name] => "nick")
end
it 'executes an insert on the connection' do
diff --git a/spec/active_relation/unit/relations/relation_spec.rb b/spec/active_relation/unit/relations/relation_spec.rb
index 7bb85d7270..682ec88f10 100644
--- a/spec/active_relation/unit/relations/relation_spec.rb
+++ b/spec/active_relation/unit/relations/relation_spec.rb
@@ -138,7 +138,7 @@ module ActiveRelation
it 'manufactures an insertion relation' do
Session.start do
record = {@relation[:name] => 'carl'}
- mock(Session.new).create(Insertion.new(@relation, record.bind(@relation)))
+ mock(Session.new).create(Insertion.new(@relation, record))
@relation.insert(record).should == @relation
end
end
@@ -148,7 +148,7 @@ module ActiveRelation
it 'manufactures an update relation' do
Session.start do
assignments = {@relation[:name] => Value.new('bob', @relation)}
- mock(Session.new).update(Update.new(@relation, assignments.bind(@relation)))
+ mock(Session.new).update(Update.new(@relation, assignments))
@relation.update(assignments).should == @relation
end
end
diff --git a/spec/active_relation/unit/relations/update_spec.rb b/spec/active_relation/unit/relations/update_spec.rb
index 9053f292d6..5c234fe759 100644
--- a/spec/active_relation/unit/relations/update_spec.rb
+++ b/spec/active_relation/unit/relations/update_spec.rb
@@ -9,7 +9,7 @@ module ActiveRelation
describe '#to_sql' do
describe 'when given values whose types correspond to the types of the attributes' do
before do
- @update = Update.new(@relation, @relation[:name] => "nick".bind(@relation))
+ @update = Update.new(@relation, @relation[:name] => "nick")
end
it 'manufactures sql updating attributes' do
@@ -22,7 +22,7 @@ module ActiveRelation
describe 'when given values whose types differ from from the types of the attributes' do
before do
- @update = Update.new(@relation, @relation[:id] => '1-asdf'.bind(@relation))
+ @update = Update.new(@relation, @relation[:id] => '1-asdf')
end
it 'manufactures sql updating attributes' do
@@ -37,7 +37,7 @@ module ActiveRelation
before do
@update = Update.new(
@relation.select(@relation[:id].eq(1)),
- @relation[:name] => "nick".bind(@relation)
+ @relation[:name] => "nick"
)
end
@@ -53,7 +53,7 @@ module ActiveRelation
describe '#call' do
before do
- @update = Update.new(@relation, @relation[:name] => "nick".bind(@relation))
+ @update = Update.new(@relation, @relation[:name] => "nick")
end
it 'executes an update on the connection' do