2010-10-18 19:54:50 -04:00
|
|
|
require 'helper'
|
2010-08-19 02:00:28 -04:00
|
|
|
|
2010-08-19 02:12:39 -04:00
|
|
|
describe Arel::Nodes::DeleteStatement do
|
2010-08-19 02:00:28 -04:00
|
|
|
describe "#clone" do
|
2010-08-19 02:12:39 -04:00
|
|
|
it "clones wheres" do
|
2010-08-19 02:00:28 -04:00
|
|
|
statement = Arel::Nodes::DeleteStatement.new
|
|
|
|
statement.wheres = %w[a b c]
|
|
|
|
|
|
|
|
dolly = statement.clone
|
2010-10-18 18:41:21 -04:00
|
|
|
dolly.wheres.must_equal statement.wheres
|
|
|
|
dolly.wheres.wont_be_same_as statement.wheres
|
2010-08-19 02:00:28 -04:00
|
|
|
end
|
|
|
|
end
|
2012-08-18 22:33:25 -04:00
|
|
|
|
|
|
|
describe 'equality' do
|
|
|
|
it 'is equal with equal ivars' do
|
|
|
|
statement1 = Arel::Nodes::DeleteStatement.new
|
|
|
|
statement1.wheres = %w[a b c]
|
|
|
|
statement2 = Arel::Nodes::DeleteStatement.new
|
|
|
|
statement2.wheres = %w[a b c]
|
|
|
|
array = [statement1, statement2]
|
|
|
|
assert_equal 1, array.uniq.size
|
|
|
|
end
|
|
|
|
|
|
|
|
it 'is not equal with different ivars' do
|
|
|
|
statement1 = Arel::Nodes::DeleteStatement.new
|
|
|
|
statement1.wheres = %w[a b c]
|
|
|
|
statement2 = Arel::Nodes::DeleteStatement.new
|
|
|
|
statement2.wheres = %w[1 2 3]
|
|
|
|
array = [statement1, statement2]
|
|
|
|
assert_equal 2, array.uniq.size
|
|
|
|
end
|
|
|
|
end
|
2010-08-19 02:00:28 -04:00
|
|
|
end
|