aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test/dispatch/routing_test.rb
diff options
context:
space:
mode:
authorTerence Sun <tsun1215@gmail.com>2015-01-31 19:15:42 -0800
committerTerence Sun <tsun1215@gmail.com>2015-02-08 12:03:56 -0500
commitb9c63b0aae7a7f9ddf32e155b11a51bd9c441857 (patch)
treeb258b2d5128ff0d29a571835815dc68380286e71 /actionpack/test/dispatch/routing_test.rb
parentde9a3748c436f849dd1877851115cd94663c2725 (diff)
downloadrails-b9c63b0aae7a7f9ddf32e155b11a51bd9c441857.tar.gz
rails-b9c63b0aae7a7f9ddf32e155b11a51bd9c441857.tar.bz2
rails-b9c63b0aae7a7f9ddf32e155b11a51bd9c441857.zip
Explicitly ignored wildcard verbs from head_routes
In match_head_routes, deleted the routes in which request.request_method was empty (matches all HTTP verbs) when responding to a HEAD request. This prevents catch-all routes (such as Racks) from intercepting the HEAD request. Fixes #18698
Diffstat (limited to 'actionpack/test/dispatch/routing_test.rb')
-rw-r--r--actionpack/test/dispatch/routing_test.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/actionpack/test/dispatch/routing_test.rb b/actionpack/test/dispatch/routing_test.rb
index 3a95a9025f..ca5de05814 100644
--- a/actionpack/test/dispatch/routing_test.rb
+++ b/actionpack/test/dispatch/routing_test.rb
@@ -3477,6 +3477,18 @@ class TestRoutingMapper < ActionDispatch::IntegrationTest
assert_equal '/post/comments/new', new_comment_path
end
+ def test_head_fetch_with_mount_on_root
+ draw do
+ get '/home' => 'test#index'
+ mount lambda { |env| [404, {"Content-Type" => "text/html"}, ["testing"]] }, at: '/'
+ end
+ head '/home'
+ assert_response :success
+
+ head '/'
+ assert_response :not_found
+ end
+
private
def draw(&block)