From 8665c754cb61c947cd55f8886c28188050aed78d Mon Sep 17 00:00:00 2001 From: Yehuda Katz Date: Sat, 9 Jan 2010 11:01:54 -0600 Subject: [PATCH] Add a generator_paths config option --- railties/lib/rails/configuration.rb | 12 +++++++----- railties/test/plugins/configuration_test.rb | 6 ++++++ 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/railties/lib/rails/configuration.rb b/railties/lib/rails/configuration.rb index c180031c61..800a8215b8 100644 --- a/railties/lib/rails/configuration.rb +++ b/railties/lib/rails/configuration.rb @@ -22,15 +22,17 @@ def self.default_middleware_stack end end - attr_reader :middleware + attr_reader :middleware, :generator_paths def initialize(base = nil) if base - @options = base.options.dup - @middleware = base.middleware.dup + @options = base.options.dup + @middleware = base.middleware.dup + @generator_paths = base.generator_paths.dup else - @options = Hash.new { |h,k| h[k] = ActiveSupport::OrderedOptions.new } - @middleware = self.class.default_middleware_stack + @options = Hash.new { |h,k| h[k] = ActiveSupport::OrderedOptions.new } + @middleware = self.class.default_middleware_stack + @generator_paths = [] end end diff --git a/railties/test/plugins/configuration_test.rb b/railties/test/plugins/configuration_test.rb index 25bf24eb3b..03c738971f 100644 --- a/railties/test/plugins/configuration_test.rb +++ b/railties/test/plugins/configuration_test.rb @@ -24,6 +24,12 @@ class Foo < Rails::Railtie ; config.foo.greetings = "hello" ; end assert_equal "hello", AppTemplate::Application.config.foo.greetings end + test "plugins can provide generators" do + class Foo < Rails::Railtie ; config.generator_paths << "/foo" ; end + require "#{app_path}/config/application" + assert_eqaul ["/foo"], AppTemplate::Application.config.generator_paths + end + test "plugin config merges are deep" do class Foo < Rails::Railtie ; config.foo.greetings = 'hello' ; end class MyApp < Rails::Application -- GitLab