diff options
author | Suraj N. Kurapati <sunaku@gmail.com> | 2012-09-21 03:12:49 -0700 |
---|---|---|
committer | Suraj N. Kurapati <sunaku@gmail.com> | 2012-09-21 03:12:49 -0700 |
commit | 24ff439eeeef2b9b4ddf1b0ee360e78610fe30c8 (patch) | |
tree | b48429458a5d0fbaceae3e035d1cef1fa553358a | |
parent | e032dabdb2adb34e3db8cd35e9f58bc0536475c1 (diff) | |
download | rails-24ff439eeeef2b9b4ddf1b0ee360e78610fe30c8.tar.gz rails-24ff439eeeef2b9b4ddf1b0ee360e78610fe30c8.tar.bz2 rails-24ff439eeeef2b9b4ddf1b0ee360e78610fe30c8.zip |
GH-138: add Arel::SelectManager#projections method
-rw-r--r-- | lib/arel/select_manager.rb | 4 | ||||
-rw-r--r-- | test/test_select_manager.rb | 8 |
2 files changed, 12 insertions, 0 deletions
diff --git a/lib/arel/select_manager.rb b/lib/arel/select_manager.rb index d20faa6eb3..b5c5834a51 100644 --- a/lib/arel/select_manager.rb +++ b/lib/arel/select_manager.rb @@ -141,6 +141,10 @@ module Arel self end + def projections + @ctx.projections + end + def projections= projections @ctx.projections = projections end diff --git a/test/test_select_manager.rb b/test/test_select_manager.rb index d68deb3061..46a2cbbe97 100644 --- a/test/test_select_manager.rb +++ b/test/test_select_manager.rb @@ -1033,6 +1033,14 @@ module Arel end end + describe 'projections' do + it 'reads projections' do + manager = Arel::SelectManager.new Table.engine + manager.project Arel.sql('foo'), Arel.sql('bar') + manager.projections.must_equal [Arel.sql('foo'), Arel.sql('bar')] + end + end + describe 'projections=' do it 'overwrites projections' do manager = Arel::SelectManager.new Table.engine |