diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2011-03-23 17:55:03 -0700 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2011-03-23 17:55:03 -0700 |
commit | 2b27e653f7be7649f56b834543bcaf27e2b44c74 (patch) | |
tree | e6ab2e2c9432f9e5e5747bfaac640f27845404fe /test | |
parent | b707dddd89a61b86570cbe3a5e923bb8e436c38d (diff) | |
download | rails-2b27e653f7be7649f56b834543bcaf27e2b44c74.tar.gz rails-2b27e653f7be7649f56b834543bcaf27e2b44c74.tar.bz2 rails-2b27e653f7be7649f56b834543bcaf27e2b44c74.zip |
supporting any node in SelectManager#from
Diffstat (limited to 'test')
-rw-r--r-- | test/test_select_manager.rb | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/test/test_select_manager.rb b/test/test_select_manager.rb index 3eec73a1f0..799c9fe453 100644 --- a/test/test_select_manager.rb +++ b/test/test_select_manager.rb @@ -101,6 +101,23 @@ module Arel manager.project table['id'] manager.to_sql.must_be_like 'SELECT "users"."id" FROM users' end + + it 'should support any ast' do + table = Table.new :users + manager1 = Arel::SelectManager.new Table.engine + + manager2 = Arel::SelectManager.new Table.engine + manager2.project(Arel.sql('*')) + manager2.from table + + manager1.project Arel.sql('lol') + as = manager2.as manager2.grouping(manager2.ast), Arel.sql('omg') + manager1.from as + + manager1.to_sql.must_be_like %{ + SELECT lol FROM (SELECT * FROM "users" ) AS omg + } + end end describe 'having' do |