diff options
Diffstat (limited to 'actionpack')
-rw-r--r-- | actionpack/lib/action_dispatch/routing/mapper.rb | 2 | ||||
-rw-r--r-- | actionpack/test/controller/routing_test.rb | 12 |
2 files changed, 1 insertions, 13 deletions
diff --git a/actionpack/lib/action_dispatch/routing/mapper.rb b/actionpack/lib/action_dispatch/routing/mapper.rb index f57d88d1a5..522012063d 100644 --- a/actionpack/lib/action_dispatch/routing/mapper.rb +++ b/actionpack/lib/action_dispatch/routing/mapper.rb @@ -187,7 +187,7 @@ module ActionDispatch # Get all the symbol nodes followed by literals that are not the # dummy node. symbols = ast.find_all { |n| - n.cat? && n.left.symbol? && n.right.cat? + n.cat? && n.left.symbol? && n.right.cat? && n.right.left.literal? }.map(&:left) # Get all the symbol nodes preceded by literals. diff --git a/actionpack/test/controller/routing_test.rb b/actionpack/test/controller/routing_test.rb index 178cd41922..a39fede5b9 100644 --- a/actionpack/test/controller/routing_test.rb +++ b/actionpack/test/controller/routing_test.rb @@ -94,18 +94,6 @@ class LegacyRouteSetTests < ActiveSupport::TestCase assert_equal({"artist"=>"journey", "song"=>"faithfully"}, hash) end - def test_symbols_with_dashes_reversed - rs.draw do - get ':artist(/omg-:song)', :to => lambda { |env| - resp = ActiveSupport::JSON.encode ActionDispatch::Request.new(env).path_parameters - [200, {}, [resp]] - } - end - - hash = ActiveSupport::JSON.decode get(URI('http://example.org/journey/omg-faithfully')) - assert_equal({"artist"=>"journey", "song"=>"faithfully"}, hash) - end - def test_id_with_dash rs.draw do get '/journey/:id', :to => lambda { |env| |