Merge pull request #3861 from andyjeffries/master

Named Routes shouldn't override existing ones (currently route recognition goes with the earliest match, named routes use the latest match)
This commit is contained in:
José Valim
2011-12-05 08:48:25 -08:00
2 changed files with 3 additions and 3 deletions

View File

@@ -356,7 +356,7 @@ module ActionDispatch
conditions = build_conditions(conditions, valid_conditions, path.names.map { |x| x.to_sym })
route = @set.add_route(app, path, conditions, defaults, name)
named_routes[name] = route if name
named_routes[name] = route if name && !named_routes[name]
route
end

View File

@@ -713,12 +713,12 @@ class RouteSetTest < ActiveSupport::TestCase
assert_equal set.routes.first, set.named_routes[:hello]
end
def test_later_named_routes_take_precedence
def test_earlier_named_routes_take_precedence
set.draw do
match '/hello/world' => 'a#b', :as => 'hello'
match '/hello' => 'a#b', :as => 'hello'
end
assert_equal set.routes.last, set.named_routes[:hello]
assert_equal set.routes.first, set.named_routes[:hello]
end
def setup_named_route_test