aboutsummaryrefslogtreecommitdiffstats
path: root/test/nodes/test_update_statement.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/nodes/test_update_statement.rb')
-rw-r--r--test/nodes/test_update_statement.rb40
1 files changed, 40 insertions, 0 deletions
diff --git a/test/nodes/test_update_statement.rb b/test/nodes/test_update_statement.rb
index 8920e977b5..920dc6e3ef 100644
--- a/test/nodes/test_update_statement.rb
+++ b/test/nodes/test_update_statement.rb
@@ -15,4 +15,44 @@ describe Arel::Nodes::UpdateStatement do
dolly.values.wont_be_same_as statement.values
end
end
+
+ describe 'equality' do
+ it 'is equal with equal ivars' do
+ statement1 = Arel::Nodes::UpdateStatement.new
+ statement1.relation = 'zomg'
+ statement1.wheres = 2
+ statement1.values = false
+ statement1.orders = %w[x y z]
+ statement1.limit = 42
+ statement1.key = 'zomg'
+ statement2 = Arel::Nodes::UpdateStatement.new
+ statement2.relation = 'zomg'
+ statement2.wheres = 2
+ statement2.values = false
+ statement2.orders = %w[x y z]
+ statement2.limit = 42
+ statement2.key = 'zomg'
+ array = [statement1, statement2]
+ assert_equal 1, array.uniq.size
+ end
+
+ it 'is not equal with different ivars' do
+ statement1 = Arel::Nodes::UpdateStatement.new
+ statement1.relation = 'zomg'
+ statement1.wheres = 2
+ statement1.values = false
+ statement1.orders = %w[x y z]
+ statement1.limit = 42
+ statement1.key = 'zomg'
+ statement2 = Arel::Nodes::UpdateStatement.new
+ statement2.relation = 'zomg'
+ statement2.wheres = 2
+ statement2.values = false
+ statement2.orders = %w[x y z]
+ statement2.limit = 42
+ statement2.key = 'wth'
+ array = [statement1, statement2]
+ assert_equal 2, array.uniq.size
+ end
+ end
end