diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2014-04-08 16:20:48 -0700 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2014-04-08 16:20:48 -0700 |
commit | c8140beae74bd63f2c1edd31d6e7ce9bcd31169d (patch) | |
tree | d1d5aed6ab16adada7807bd34964f31464c01931 /test/visitors/test_join_sql.rb | |
parent | 4e2e1cc63a81bf549712c4cacfe1f3dc32e632a2 (diff) | |
parent | 55c0071ce3685a78b4f039be24b2ab40b8779467 (diff) | |
download | rails-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.rb | 26 |
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 |