aboutsummaryrefslogtreecommitdiffstats
path: root/railties/test
diff options
context:
space:
mode:
authorPiotr Sarnacki <drogus@gmail.com>2010-09-25 19:02:14 +0200
committerPiotr Sarnacki <drogus@gmail.com>2010-09-30 09:47:05 +0200
commit74598fe7e9097484c4029e2731e462c6c82836f9 (patch)
tree3fed71a395b53b142bf9a0f35d6648cf9778418a /railties/test
parent69f97f469747777ed1c457715f5361f6b8a0ab7b (diff)
downloadrails-74598fe7e9097484c4029e2731e462c6c82836f9.tar.gz
rails-74598fe7e9097484c4029e2731e462c6c82836f9.tar.bz2
rails-74598fe7e9097484c4029e2731e462c6c82836f9.zip
Do not overwrite _railtie method on namespace while creating isolated engine or application.
In order to run Engine as standalone application, you will need Rails::Application instance in the same namespace that engine one. It's very important to leave _railtie bound to whatever used "namespace" method first.
Diffstat (limited to 'railties/test')
-rw-r--r--railties/test/railties/engine_test.rb20
1 files changed, 20 insertions, 0 deletions
diff --git a/railties/test/railties/engine_test.rb b/railties/test/railties/engine_test.rb
index a9dd7d4c1b..17bffe05e1 100644
--- a/railties/test/railties/engine_test.rb
+++ b/railties/test/railties/engine_test.rb
@@ -643,5 +643,25 @@ module RailtiesTest
Bukkits::Engine.load_seed
assert Bukkits::Engine.config.bukkits_seeds_loaded
end
+
+ test "using namespace more than once on one module should not overwrite _railtie method" do
+ @plugin.write "lib/bukkits.rb", <<-RUBY
+ module AppTemplate
+ class Engine < ::Rails::Engine
+ namespace(AppTemplate)
+ end
+ end
+ RUBY
+
+ add_to_config "namespace AppTemplate"
+
+ app_file "config/routes.rb", <<-RUBY
+ AppTemplate::Application.routes.draw do end
+ RUBY
+
+ boot_rails
+
+ assert_equal AppTemplate._railtie, AppTemplate::Engine
+ end
end
end