diff options
author | Jamis Buck <jamis@37signals.com> | 2006-06-05 14:31:38 +0000 |
---|---|---|
committer | Jamis Buck <jamis@37signals.com> | 2006-06-05 14:31:38 +0000 |
commit | 332fcfaf6bee6b3ae0911e9bbe24ded9af757868 (patch) | |
tree | 3cb23140f478836e75d9de1a6c447e5e1320e1ab /actionpack/test/controller/routing_test.rb | |
parent | 7d88146e9ed908d663786a45c87cdeaa56135a39 (diff) | |
download | rails-332fcfaf6bee6b3ae0911e9bbe24ded9af757868.tar.gz rails-332fcfaf6bee6b3ae0911e9bbe24ded9af757868.tar.bz2 rails-332fcfaf6bee6b3ae0911e9bbe24ded9af757868.zip |
Make sure regexp chunks are grouped when the segment has a regexp constraint so that captures are counted correctly (closes #5267)
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4434 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack/test/controller/routing_test.rb')
-rw-r--r-- | actionpack/test/controller/routing_test.rb | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/actionpack/test/controller/routing_test.rb b/actionpack/test/controller/routing_test.rb index 3f8397c95e..6388c6af03 100644 --- a/actionpack/test/controller/routing_test.rb +++ b/actionpack/test/controller/routing_test.rb @@ -1230,6 +1230,29 @@ class RouteSetTest < Test::Unit::TestCase ensure Object.send(:remove_const, :PeopleController) end + + def test_typo_recognition + Object.const_set(:ArticlesController, Class.new) + + set.draw do |map| + map.connect 'articles/:year/:month/:day/:title', + :controller => 'articles', :action => 'permalink', + :year => /\d{4}/, :day => /\d{1,2}/, :month => /\d{1,2}/ + end + + request.path = "/articles/2005/11/05/a-very-interesting-article" + request.method = :get + assert_nothing_raised { set.recognize(request) } + assert_equal("permalink", request.path_parameters[:action]) + assert_equal("2005", request.path_parameters[:year]) + assert_equal("11", request.path_parameters[:month]) + assert_equal("05", request.path_parameters[:day]) + assert_equal("a-very-interesting-article", request.path_parameters[:title]) + + ensure + Object.send(:remove_const, :ArticlesController) + end + def test_recognize_with_conditions_and_format Object.const_set(:PeopleController, Class.new) |