aboutsummaryrefslogtreecommitdiffstats
path: root/railties
diff options
context:
space:
mode:
Diffstat (limited to 'railties')
-rw-r--r--railties/lib/rails/configuration.rb12
-rw-r--r--railties/test/plugins/configuration_test.rb6
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 @@ module Rails
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 @@ module PluginsTest
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