aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test/controller/routing_test.rb
diff options
context:
space:
mode:
authorNicholas Seckar <nseckar@gmail.com>2005-07-14 09:09:39 +0000
committerNicholas Seckar <nseckar@gmail.com>2005-07-14 09:09:39 +0000
commit6ed16ff60290620c87772670d312585f2431d03f (patch)
tree7cef602051d2cb104deedf95e6b1d105e5042caa /actionpack/test/controller/routing_test.rb
parent16595c93b294f3fa852993dc3b2ba4b9df253147 (diff)
downloadrails-6ed16ff60290620c87772670d312585f2431d03f.tar.gz
rails-6ed16ff60290620c87772670d312585f2431d03f.tar.bz2
rails-6ed16ff60290620c87772670d312585f2431d03f.zip
Provide correct defaults for Named Routes which do not specify :action
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1833 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack/test/controller/routing_test.rb')
-rw-r--r--actionpack/test/controller/routing_test.rb27
1 files changed, 27 insertions, 0 deletions
diff --git a/actionpack/test/controller/routing_test.rb b/actionpack/test/controller/routing_test.rb
index 1d7613b2ac..c0bc92f6db 100644
--- a/actionpack/test/controller/routing_test.rb
+++ b/actionpack/test/controller/routing_test.rb
@@ -836,6 +836,33 @@ class RouteSetTests < Test::Unit::TestCase
assert_equal ['/', {}], rs.generate(:controller => 'content', :action => 'index')
assert_equal ['/', {}], rs.generate(:controller => 'content')
end
+
+ def test_named_url_with_no_action_specified
+ rs.draw do
+ rs.root '', :controller => 'content'
+ rs.connect ':controller/:action/:id'
+ end
+
+ assert_equal ['/', {}], rs.generate(:controller => 'content', :action => 'index')
+ assert_equal ['/', {}], rs.generate(:controller => 'content')
+
+ x = setup_for_named_route
+ assert_equal({:controller => '/content', :action => 'index'},
+ x.new.send(:root_url))
+ end
+
+ def test_url_generated_when_forgetting_action
+ [{:controller => 'content', :action => 'index'}, {:controller => 'content'}].each do |hash|
+ rs.draw do
+ rs.root '', hash
+ rs.connect ':controller/:action/:id'
+ end
+ assert_equal ['/', {}], rs.generate({:action => nil}, {:controller => 'content', :action => 'hello'})
+ assert_equal ['/', {}], rs.generate({:controller => 'content'})
+ assert_equal ['/content/hi', {}], rs.generate({:controller => 'content', :action => 'hi'})
+ end
+ end
+
end
end