From 33a9cdc9963489759b75102dd0df48b5a1987369 Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Tue, 20 Jul 2010 16:33:23 -0700 Subject: inequality is a special case of equality --- spec/algebra/unit/predicates/inequality_spec.rb | 26 +++++++++++++++++++++++++ spec/algebra/unit/predicates/predicate_spec.rb | 22 +++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 spec/algebra/unit/predicates/inequality_spec.rb create mode 100644 spec/algebra/unit/predicates/predicate_spec.rb (limited to 'spec/algebra') diff --git a/spec/algebra/unit/predicates/inequality_spec.rb b/spec/algebra/unit/predicates/inequality_spec.rb new file mode 100644 index 0000000000..557494e2cd --- /dev/null +++ b/spec/algebra/unit/predicates/inequality_spec.rb @@ -0,0 +1,26 @@ +require 'spec_helper' + +module Arel + module Predicates + describe Inequality do + before do + relation1 = Arel::Table.new(:users) + relation2 = Arel::Table.new(:photos) + left = relation1[:id] + right = relation2[:user_id] + @a = Inequality.new(left, right) + @b = Inequality.new(right, left) + end + + describe '==' do + it "is equal to itself" do + @a.should == @a + end + + it "should not care abount children order" do + @a.should == @b + end + end + end + end +end diff --git a/spec/algebra/unit/predicates/predicate_spec.rb b/spec/algebra/unit/predicates/predicate_spec.rb new file mode 100644 index 0000000000..6acc047cbb --- /dev/null +++ b/spec/algebra/unit/predicates/predicate_spec.rb @@ -0,0 +1,22 @@ +require 'spec_helper' + +module Arel + module Predicates + describe Polyadic do + before do + @relation1 = Arel::Table.new(:users) + @relation2 = Arel::Table.new(:photos) + @a = @relation1[:id] + @b = @relation2[:user_id] + end + + describe '==' do + left = Polyadic.new @a, @b + right = Polyadic.new @b, @a + + left.should != right + left.should == right + end + end + end +end -- cgit v1.2.3