aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Gunderloy <MikeG1@larkfarm.com>2009-03-08 07:31:27 -0500
committerPratik Naik <pratiknaik@gmail.com>2009-03-08 12:37:17 +0000
commit5e0f6214d2421a4931c85ee6a239158c69e57b65 (patch)
tree544e4ec6ac4cca04a5cdda666ccbee85ddeb6f06
parent5c87e9adddc22703a3dbbb785e32fafe0e91ce78 (diff)
downloadrails-5e0f6214d2421a4931c85ee6a239158c69e57b65.tar.gz
rails-5e0f6214d2421a4931c85ee6a239158c69e57b65.tar.bz2
rails-5e0f6214d2421a4931c85ee6a239158c69e57b65.zip
Support OPTIONS verb in route conditions [#1727 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
-rw-r--r--actionpack/lib/action_controller/routing.rb2
-rw-r--r--actionpack/test/controller/routing_test.rb8
2 files changed, 9 insertions, 1 deletions
diff --git a/actionpack/lib/action_controller/routing.rb b/actionpack/lib/action_controller/routing.rb
index a2141a77dc..c0eb61340b 100644
--- a/actionpack/lib/action_controller/routing.rb
+++ b/actionpack/lib/action_controller/routing.rb
@@ -267,7 +267,7 @@ module ActionController
module Routing
SEPARATORS = %w( / . ? )
- HTTP_METHODS = [:get, :head, :post, :put, :delete]
+ HTTP_METHODS = [:get, :head, :post, :put, :delete, :options]
ALLOWED_REQUIREMENTS_FOR_OPTIMISATION = [:controller, :action].to_set
diff --git a/actionpack/test/controller/routing_test.rb b/actionpack/test/controller/routing_test.rb
index 01b3db64fc..55f3ad23be 100644
--- a/actionpack/test/controller/routing_test.rb
+++ b/actionpack/test/controller/routing_test.rb
@@ -1865,6 +1865,14 @@ class RouteSetTest < Test::Unit::TestCase
end
end
+ def test_route_requirements_with_options_method_condition_is_valid
+ assert_nothing_raised do
+ set.draw do |map|
+ map.connect 'valid/route', :controller => 'pages', :action => 'show', :conditions => {:method => :options}
+ end
+ end
+ end
+
def test_route_requirements_with_head_method_condition_is_invalid
assert_raises ArgumentError do
set.draw do |map|