mirror of
https://github.com/github/rails.git
synced 2026-04-26 03:00:59 -04:00
Generating routes with optional format segment does not inherit params format [#2043 state:resolved]
This commit is contained in:
@@ -324,7 +324,11 @@ module ActionController
|
||||
def to_s
|
||||
'(.:format)?'
|
||||
end
|
||||
|
||||
|
||||
def extract_value
|
||||
"#{local_name} = options[:#{key}] && options[:#{key}].to_s.downcase"
|
||||
end
|
||||
|
||||
#the value should not include the period (.)
|
||||
def match_extraction(next_capture)
|
||||
%[
|
||||
|
||||
@@ -2237,6 +2237,22 @@ class RouteSetTest < Test::Unit::TestCase
|
||||
)
|
||||
end
|
||||
|
||||
def test_format_is_not_inherit
|
||||
set.draw do |map|
|
||||
map.connect '/posts.:format', :controller => 'posts'
|
||||
end
|
||||
|
||||
assert_equal '/posts', set.generate(
|
||||
{:controller => 'posts'},
|
||||
{:controller => 'posts', :action => 'index', :format => 'xml'}
|
||||
)
|
||||
|
||||
assert_equal '/posts.xml', set.generate(
|
||||
{:controller => 'posts', :format => 'xml'},
|
||||
{:controller => 'posts', :action => 'index', :format => 'xml'}
|
||||
)
|
||||
end
|
||||
|
||||
def test_expiry_determination_should_consider_values_with_to_param
|
||||
set.draw { |map| map.connect 'projects/:project_id/:controller/:action' }
|
||||
assert_equal '/projects/1/post/show', set.generate(
|
||||
|
||||
Reference in New Issue
Block a user