From 0e9a9c7aa7791de708657c269dd7b9bb0f42b01c Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Fri, 6 Aug 2010 09:14:10 -0700 Subject: removing test code from implementation --- lib/arel/algebra/relations/writes.rb | 7 ------- spec/algebra/unit/relations/relation_spec.rb | 21 +++++++++++++++++---- 2 files changed, 17 insertions(+), 11 deletions(-) diff --git a/lib/arel/algebra/relations/writes.rb b/lib/arel/algebra/relations/writes.rb index 8cf7a7cdad..7df6d861a8 100644 --- a/lib/arel/algebra/relations/writes.rb +++ b/lib/arel/algebra/relations/writes.rb @@ -1,8 +1,5 @@ module Arel class Action < Compound - def == other - super || self.class === other && @relation == other.relation - end end class Deletion < Action @@ -27,10 +24,6 @@ module Arel engine.create(self) end - def == other - super && @record == other.record - end - def eval unoperated_rows + [Row.new(self, record.values.collect(&:value))] end diff --git a/spec/algebra/unit/relations/relation_spec.rb b/spec/algebra/unit/relations/relation_spec.rb index d08c38acd5..a7e14e6be5 100644 --- a/spec/algebra/unit/relations/relation_spec.rb +++ b/spec/algebra/unit/relations/relation_spec.rb @@ -182,7 +182,10 @@ module Arel describe '#delete' do it 'manufactures a deletion relation' do Session.start do |s| - s.should_receive(:delete).with(Deletion.new(@relation)) + s.should_receive(:delete) do |delete| + delete.relation.should == @relation + delete.should be_kind_of Deletion + end @relation.delete end end @@ -191,8 +194,13 @@ module Arel describe '#insert' do it 'manufactures an insertion relation' do Session.start do |s| - record = { @relation[:name] => 'carl' } - s.should_receive(:create).with(Insert.new(@relation, record)) + record = { @relation[:name] => Value.new('carl', @relation) } + s.should_receive(:create) do |insert| + insert.relation.should == @relation + insert.record.should == record + insert.should be_kind_of Insert + insert + end @relation.insert(record) end end @@ -202,7 +210,12 @@ module Arel it 'manufactures an update relation' do Session.start do |s| assignments = { @relation[:name] => Value.new('bob', @relation) } - s.should_receive(:update).with(Update.new(@relation, assignments)) + s.should_receive(:update) do |update| + update.relation.should == @relation + update.assignments.should == assignments + update.should be_kind_of Update + update + end @relation.update(assignments) end end -- cgit v1.2.3