diff --git a/lib/arel/select_manager.rb b/lib/arel/select_manager.rb index 0fa344945e..2747bdfda8 100644 --- a/lib/arel/select_manager.rb +++ b/lib/arel/select_manager.rb @@ -161,6 +161,8 @@ module Arel node_class = Nodes::With end @ast.with = node_class.new(subqueries.flatten) + + self end def take limit diff --git a/test/test_select_manager.rb b/test/test_select_manager.rb index f457c55f40..3ffdbe2e23 100644 --- a/test/test_select_manager.rb +++ b/test/test_select_manager.rb @@ -288,9 +288,7 @@ module Arel as_statement = Arel::Nodes::As.new replies, union manager = Arel::SelectManager.new Table.engine - manager.from replies - manager.with :recursive, as_statement - manager.project Arel.star + manager.with(:recursive, as_statement).from(replies).project(Arel.star) sql = manager.to_sql sql.must_be_like %{ @@ -302,7 +300,6 @@ module Arel SELECT * FROM "replies" } end - end describe 'ast' do