aboutsummaryrefslogtreecommitdiffstats
path: root/test/visitors/test_join_sql.rb
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2014-04-08 16:20:48 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2014-04-08 16:20:48 -0700
commitc8140beae74bd63f2c1edd31d6e7ce9bcd31169d (patch)
treed1d5aed6ab16adada7807bd34964f31464c01931 /test/visitors/test_join_sql.rb
parent4e2e1cc63a81bf549712c4cacfe1f3dc32e632a2 (diff)
parent55c0071ce3685a78b4f039be24b2ab40b8779467 (diff)
downloadrails-c8140beae74bd63f2c1edd31d6e7ce9bcd31169d.tar.gz
rails-c8140beae74bd63f2c1edd31d6e7ce9bcd31169d.tar.bz2
rails-c8140beae74bd63f2c1edd31d6e7ce9bcd31169d.zip
Merge branch 'master' into collector
* master: remove order_clauses since we do not use it fix whitespace and unsupported method args Add Regexp and NotRegexp nodes for PostgreSQL Revert "Merge pull request #253 from corrupt952/master" flatten object.children in visit_Arel_Node_And Added right and full outer joins Conflicts: lib/arel/visitors/to_sql.rb lib/arel/visitors/visitor.rb
Diffstat (limited to 'test/visitors/test_join_sql.rb')
-rw-r--r--test/visitors/test_join_sql.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/visitors/test_join_sql.rb b/test/visitors/test_join_sql.rb
index ea71c05d79..34378dafe7 100644
--- a/test/visitors/test_join_sql.rb
+++ b/test/visitors/test_join_sql.rb
@@ -25,6 +25,19 @@ module Arel
end
end
+ describe 'FULL outer join' do
+ it 'should visit left if left is a join' do
+ t = Table.new :users
+ sm = t.select_manager
+ sm.join(t, Nodes::FullOuterJoin).on(t[:id]).join(
+ t, Nodes::FullOuterJoin).on(t[:id])
+ sm.join_sql.must_be_like %{
+ FULL OUTER JOIN "users" ON "users"."id"
+ FULL OUTER JOIN "users" ON "users"."id"
+ }
+ end
+ end
+
describe 'outer join' do
it 'should visit left if left is a join' do
t = Table.new :users
@@ -37,6 +50,19 @@ module Arel
}
end
end
+
+ describe 'right outer join' do
+ it 'should visit left if left is a join' do
+ t = Table.new :users
+ sm = t.select_manager
+ sm.join(t, Nodes::RightOuterJoin).on(t[:id]).join(
+ t, Nodes::RightOuterJoin).on(t[:id])
+ sm.join_sql.must_be_like %{
+ RIGHT OUTER JOIN "users" ON "users"."id"
+ RIGHT OUTER JOIN "users" ON "users"."id"
+ }
+ end
+ end
end
end
end