aboutsummaryrefslogtreecommitdiffstats
path: root/railties/test/application/middleware_test.rb
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2012-04-20 12:17:03 -0700
committerJeremy Kemper <jeremy@bitsweat.net>2012-04-20 16:02:12 -0700
commit42f6e9fb38101c0fe199d5425bd71965f9a6dfc9 (patch)
tree88df125892d8bcdf141bba092c03b4412893178c /railties/test/application/middleware_test.rb
parent99eae3f82a5a2b7c5e485ee1d370852e65ab8bde (diff)
downloadrails-42f6e9fb38101c0fe199d5425bd71965f9a6dfc9.tar.gz
rails-42f6e9fb38101c0fe199d5425bd71965f9a6dfc9.tar.bz2
rails-42f6e9fb38101c0fe199d5425bd71965f9a6dfc9.zip
Freeze the middleware stack after it's built
So apps that accidentally add middlewares later aren't unwittingly dumping them in a black hole. Closes #5911
Diffstat (limited to 'railties/test/application/middleware_test.rb')
-rw-r--r--railties/test/application/middleware_test.rb7
1 files changed, 7 insertions, 0 deletions
diff --git a/railties/test/application/middleware_test.rb b/railties/test/application/middleware_test.rb
index fc5fb60174..ba747bc633 100644
--- a/railties/test/application/middleware_test.rb
+++ b/railties/test/application/middleware_test.rb
@@ -148,6 +148,13 @@ module ApplicationTests
assert_equal "Rack::Config", middleware.first
end
+ test "can't change middleware after it's built" do
+ boot!
+ assert_raise RuntimeError do
+ app.config.middleware.use Rack::Config
+ end
+ end
+
# ConditionalGet + Etag
test "conditional get + etag middlewares handle http caching based on body" do
make_basic_app