blob: 3e4fcc0c079e6b68b913788b3036b795c70b1f16 (
plain) (
tree)
|
|
require 'helper'
describe Arel::Nodes::SelectStatement do
describe "#clone" do
it "clones cores" do
statement = Arel::Nodes::SelectStatement.new %w[a b c]
dolly = statement.clone
dolly.cores.must_equal statement.cores
dolly.cores.wont_be_same_as statement.cores
end
end
describe 'equality' do
it 'is equal with equal ivars' do
statement1 = Arel::Nodes::SelectStatement.new %w[a b c]
statement1.offset = 1
statement1.limit = 2
statement1.lock = false
statement1.orders = %w[x y z]
statement1.with = 'zomg'
statement2 = Arel::Nodes::SelectStatement.new %w[a b c]
statement2.offset = 1
statement2.limit = 2
statement2.lock = false
statement2.orders = %w[x y z]
statement2.with = 'zomg'
array = [statement1, statement2]
assert_equal 1, array.uniq.size
end
it 'is not equal with different ivars' do
statement1 = Arel::Nodes::SelectStatement.new %w[a b c]
statement1.offset = 1
statement1.limit = 2
statement1.lock = false
statement1.orders = %w[x y z]
statement1.with = 'zomg'
statement2 = Arel::Nodes::SelectStatement.new %w[a b c]
statement2.offset = 1
statement2.limit = 2
statement2.lock = false
statement2.orders = %w[x y z]
statement2.with = 'wth'
array = [statement1, statement2]
assert_equal 2, array.uniq.size
end
end
end
|