diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2011-03-07 08:50:50 -0800 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2011-03-07 08:50:50 -0800 |
commit | 9cee693213e0205cb5992728bb516215e34cb79f (patch) | |
tree | 097e97b585521c6d3eb7ae0d2e80b95c26603980 /actionpack/lib/action_dispatch | |
parent | 09d3e89cf0b3e7be03f97739e297fd40ebba1178 (diff) | |
parent | 2159e9eb64fd47635c84097e93f8708018e87751 (diff) | |
download | rails-9cee693213e0205cb5992728bb516215e34cb79f.tar.gz rails-9cee693213e0205cb5992728bb516215e34cb79f.tar.bz2 rails-9cee693213e0205cb5992728bb516215e34cb79f.zip |
Merge branch 'master' of github.com:rails/rails
* 'master' of github.com:rails/rails: (44 commits)
Fixed indentation in actionmailer base_test [#6538 state:committed]
remove unused assigned variable
removes merge conflicts
removes Examples headers introduced in 9b96de6
Revert "Fixed identation in actionmailer base_test"
Report the correct value of nil.id in the exception message as different ruby implementations may have different values, for example Rubinius returns 53 for nil.id.
Improve testing of cookies in functional tests: - cookies can be set using string or symbol keys - cookies are preserved across calls to get, post, etc. - cookie names and values are escaped - cookies can be cleared using @request.cookies.clear
more style changes
Some style changes
style changes
Revert "style changes"
Raise ArgumentError if route name is invalid [#6517 state:resolved]
style changes
Allow model to be inherited from Hash [#6487 state:resolved]
styles applied for usage
added failing test for fields_for with a record object that inherits from Hash
Fixed identation in actionmailer base_test
wrong SQL statement
commas to set off expressions that interrupt sentence flow
typo changes
...
Diffstat (limited to 'actionpack/lib/action_dispatch')
-rw-r--r-- | actionpack/lib/action_dispatch/routing/route_set.rb | 2 | ||||
-rw-r--r-- | actionpack/lib/action_dispatch/testing/test_process.rb | 2 | ||||
-rw-r--r-- | actionpack/lib/action_dispatch/testing/test_request.rb | 7 |
3 files changed, 9 insertions, 2 deletions
diff --git a/actionpack/lib/action_dispatch/routing/route_set.rb b/actionpack/lib/action_dispatch/routing/route_set.rb index fc86d52a3a..61053d4464 100644 --- a/actionpack/lib/action_dispatch/routing/route_set.rb +++ b/actionpack/lib/action_dispatch/routing/route_set.rb @@ -1,5 +1,6 @@ require 'rack/mount' require 'forwardable' +require 'active_support/core_ext/object/blank' require 'active_support/core_ext/object/to_query' require 'active_support/core_ext/hash/slice' @@ -330,6 +331,7 @@ module ActionDispatch end def add_route(app, conditions = {}, requirements = {}, defaults = {}, name = nil, anchor = true) + raise ArgumentError, "Invalid route name: '#{name}'" unless name.blank? || name.to_s.match(/^[_a-z]\w*$/i) route = Route.new(self, app, conditions, requirements, defaults, name, anchor) @set.add_route(*route) named_routes[name] = route if name diff --git a/actionpack/lib/action_dispatch/testing/test_process.rb b/actionpack/lib/action_dispatch/testing/test_process.rb index 16f3674164..d430691429 100644 --- a/actionpack/lib/action_dispatch/testing/test_process.rb +++ b/actionpack/lib/action_dispatch/testing/test_process.rb @@ -22,7 +22,7 @@ module ActionDispatch end def cookies - HashWithIndifferentAccess.new(@request.cookies.merge(@response.cookies)) + @request.cookies.merge(@response.cookies).with_indifferent_access end def redirect_to_url diff --git a/actionpack/lib/action_dispatch/testing/test_request.rb b/actionpack/lib/action_dispatch/testing/test_request.rb index cf440a1fad..822adb6a47 100644 --- a/actionpack/lib/action_dispatch/testing/test_request.rb +++ b/actionpack/lib/action_dispatch/testing/test_request.rb @@ -1,5 +1,6 @@ require 'active_support/core_ext/object/blank' require 'active_support/core_ext/hash/reverse_merge' +require 'rack/utils' module ActionDispatch class TestRequest < Request @@ -77,10 +78,14 @@ module ActionDispatch private def write_cookies! unless @cookies.blank? - @env['HTTP_COOKIE'] = @cookies.map { |name, value| "#{name}=#{value};" }.join(' ') + @env['HTTP_COOKIE'] = @cookies.map { |name, value| escape_cookie(name, value) }.join('; ') end end + def escape_cookie(name, value) + "#{Rack::Utils.escape(name)}=#{Rack::Utils.escape(value)}" + end + def delete_nil_values! @env.delete_if { |k, v| v.nil? } end |