diff options
author | Nicholas Seckar <nseckar@gmail.com> | 2006-02-04 23:59:37 +0000 |
---|---|---|
committer | Nicholas Seckar <nseckar@gmail.com> | 2006-02-04 23:59:37 +0000 |
commit | 545053856367b7ac42f556c113a23252d3e55c5a (patch) | |
tree | c628ac4497716c35d2150bb08e7e2ae80adecd85 /actionpack/test/controller/routing_test.rb | |
parent | 427d0a8d14aaca59bbf2d33dba6b4a1232f895f0 (diff) | |
download | rails-545053856367b7ac42f556c113a23252d3e55c5a.tar.gz rails-545053856367b7ac42f556c113a23252d3e55c5a.tar.bz2 rails-545053856367b7ac42f556c113a23252d3e55c5a.zip |
Don't let arbitrary classes match as controllers
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3542 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack/test/controller/routing_test.rb')
-rw-r--r-- | actionpack/test/controller/routing_test.rb | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/actionpack/test/controller/routing_test.rb b/actionpack/test/controller/routing_test.rb index daf2c8e5ed..b570909641 100644 --- a/actionpack/test/controller/routing_test.rb +++ b/actionpack/test/controller/routing_test.rb @@ -643,7 +643,7 @@ class RouteSetTests < Test::Unit::TestCase assert_equal ['/admin/stuff', []], rs.generate({:controller => 'stuff'}, {:controller => 'admin/user', :action => 'list', :id => '10'}) assert_equal ['/stuff', []], rs.generate({:controller => '/stuff'}, {:controller => 'admin/user', :action => 'list', :id => '10'}) end - + def test_ignores_leading_slash @rs.draw {|m| m.connect '/:controller/:action/:id'} test_default_setup @@ -802,6 +802,13 @@ class RouteSetTests < Test::Unit::TestCase assert results, "Recognition should have succeeded" assert_equal [], results['path'] end + + def test_non_controllers_cannot_be_matched + rs.draw do + rs.connect ':controller/:action/:id' + end + assert_nil rs.recognize_path(%w(not_a show 10)), "Shouldn't recognize non-controllers as controllers!" + end def test_paths_do_not_accept_defaults assert_raises(ActionController::RoutingError) do |