Permalink
Browse files

Remove hardcoded number_of_capturesin ControllerSegment to allow rege…

…xp requirements with capturing parentheses

Signed-off-by: Michael Koziarski <michael@koziarski.com>
[#1887 state:committed]
  • Loading branch information...
1 parent fc09ebc commit f7a0a394f48a0f21e686f891546d17ce33c7840e @pixeltrix pixeltrix committed with NZKoz Feb 7, 2009
@@ -244,10 +244,6 @@ def regexp_chunk
"(?i-:(#{(regexp || Regexp.union(*possible_names)).source}))"
end
- def number_of_captures
- 1
- end
-
# Don't URI.escape the controller name since it may contain slashes.
def interpolation_chunk(value_code = local_name)
"\#{#{value_code}.to_s}"
@@ -852,6 +852,15 @@ def test_route_with_regexp_for_controller
assert_equal '/content/foo', rs.generate(:controller => "content", :action => "foo")
end
+ def test_route_with_regexp_and_captures_for_controller
+ rs.draw do |map|
+ map.connect ':controller/:action/:id', :controller => /admin\/(accounts|users)/
+ end
+ assert_equal({:controller => "admin/accounts", :action => "index"}, rs.recognize_path("/admin/accounts"))
+ assert_equal({:controller => "admin/users", :action => "index"}, rs.recognize_path("/admin/users"))
+ assert_raises(ActionController::RoutingError) { rs.recognize_path("/admin/products") }
+ end
+
def test_route_with_regexp_and_dot
rs.draw do |map|
map.connect ':controller/:action/:file',

0 comments on commit f7a0a39

Please sign in to comment.