diff options
-rw-r--r-- | lib/arel/select_manager.rb | 3 | ||||
-rw-r--r-- | spec/arel/select_manager_spec.rb | 9 |
2 files changed, 12 insertions, 0 deletions
diff --git a/lib/arel/select_manager.rb b/lib/arel/select_manager.rb index 3ac6a5cbc8..2ad9555d27 100644 --- a/lib/arel/select_manager.rb +++ b/lib/arel/select_manager.rb @@ -15,6 +15,9 @@ module Arel def group *columns columns.each do |column| + # FIXME: backwards compat + column = Nodes::SqlLiteral.new(column) if String === column + @ctx.groups.push Nodes::Group.new column end self diff --git a/spec/arel/select_manager_spec.rb b/spec/arel/select_manager_spec.rb index a6f5765b44..506abb6485 100644 --- a/spec/arel/select_manager_spec.rb +++ b/spec/arel/select_manager_spec.rb @@ -154,6 +154,15 @@ module Arel SELECT FROM "users" GROUP BY "users"."id", "users"."name" } end + + # FIXME: backwards compat + it 'makes strings literals' do + table = Table.new :users + manager = Arel::SelectManager.new Table.engine + manager.from table + manager.group 'foo' + manager.to_sql.should be_like %{ SELECT FROM "users" GROUP BY foo } + end end describe 'delete' do |