aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@loudthinking.com>2005-02-20 20:54:40 +0000
committerDavid Heinemeier Hansson <david@loudthinking.com>2005-02-20 20:54:40 +0000
commitf153f42469ff6d3791e25cdf095986909e679dde (patch)
treeda6ba4879402bca47552cc212944f148c427fa10
parentd8739bd8cb17e9ee4d87fcd4ca6bd6122e90a191 (diff)
downloadrails-f153f42469ff6d3791e25cdf095986909e679dde.tar.gz
rails-f153f42469ff6d3791e25cdf095986909e679dde.tar.bz2
rails-f153f42469ff6d3791e25cdf095986909e679dde.zip
Never end generated paths with a '/' #683
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@717 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
-rw-r--r--actionpack/lib/action_controller/routing.rb2
-rw-r--r--actionpack/lib/action_controller/url_rewriter.rb4
-rw-r--r--actionpack/test/controller/routing_tests.rb16
3 files changed, 10 insertions, 12 deletions
diff --git a/actionpack/lib/action_controller/routing.rb b/actionpack/lib/action_controller/routing.rb
index acdb4635f0..18645ae4e0 100644
--- a/actionpack/lib/action_controller/routing.rb
+++ b/actionpack/lib/action_controller/routing.rb
@@ -74,8 +74,6 @@ module ActionController
end
components.collect! {|c| c.to_s}
- components.unshift(components.shift + '/') if components.length == 1 && @items.first == :controller # Add '/' to controllers
-
return components, unused
end
diff --git a/actionpack/lib/action_controller/url_rewriter.rb b/actionpack/lib/action_controller/url_rewriter.rb
index a1b1a2a57b..45263f40fe 100644
--- a/actionpack/lib/action_controller/url_rewriter.rb
+++ b/actionpack/lib/action_controller/url_rewriter.rb
@@ -42,7 +42,7 @@ module ActionController
RESERVED_OPTIONS.each {|k| options.delete k}
path, extras = Routing::Routes.generate(options, @request)
- path = "/#{path.join('/')}"
+ path = "/#{path.join('/')}".chomp '/'
path += build_query_string(extras)
return path
@@ -135,4 +135,4 @@ module ActionController
return query_string
end
end
-end \ No newline at end of file
+end
diff --git a/actionpack/test/controller/routing_tests.rb b/actionpack/test/controller/routing_tests.rb
index 5b3879f3b1..69fe6e2b2a 100644
--- a/actionpack/test/controller/routing_tests.rb
+++ b/actionpack/test/controller/routing_tests.rb
@@ -137,12 +137,12 @@ class RouteTests < Test::Unit::TestCase
verify_recognize('admin/user', {:controller => 'admin/user', :action => 'index'})
end
def test_generate_default_nested_no_extras
- verify_generate('admin/user/', {}, {:controller => 'admin/user'}, @defaults)
- verify_generate('admin/user/', {}, {:controller => 'admin/user'}, @defaults)
+ verify_generate('admin/user', {}, {:controller => 'admin/user'}, @defaults)
+ verify_generate('admin/user', {}, {:controller => 'admin/user'}, @defaults)
end
def test_generate_default_nested
- verify_generate('admin/user/', {:a => 'a'}, {:controller => 'admin/user', :a => 'a'}, @defaults)
- verify_generate('admin/user/', {:a => 'a'}, {:controller => 'admin/user', :a => 'a'}, @defaults)
+ verify_generate('admin/user', {:a => 'a'}, {:controller => 'admin/user', :a => 'a'}, @defaults)
+ verify_generate('admin/user', {:a => 'a'}, {:controller => 'admin/user', :a => 'a'}, @defaults)
end
# Test generate with a default controller set.
@@ -429,16 +429,16 @@ class RouteSetTests < Test::Unit::TestCase
end
def test_generate_typical_controller_index_path_explicit_index
typical_request
- verify_generate('content/', {:controller => 'content', :action => 'index'})
+ verify_generate('content', {:controller => 'content', :action => 'index'})
end
def test_generate_typical_controller_index_path_explicit_index
typical_request
- verify_generate('content/', {:controller => 'content', :action => 'index'})
+ verify_generate('content', {:controller => 'content', :action => 'index'})
end
def test_generate_typical_controller_index_path_implicit_index
typical_request
@request.path_parameters[:controller] = 'resource'
- verify_generate('content/', {:controller => 'content'})
+ verify_generate('content', {:controller => 'content'})
end
def test_generate_no_perfect_route
@@ -480,6 +480,6 @@ end
class AssertionRoutingTests < Test::Unit::TestCase
def test_assert_routing
ActionController::Routing::Routes.reload rescue nil
- assert_routing('content/', {:controller => 'content', :action => 'index'})
+ assert_routing('content', {:controller => 'content', :action => 'index'})
end
end