diff options
author | rockrep <michael.kintzer@gmail.com> | 2014-11-26 13:34:52 -0800 |
---|---|---|
committer | rockrep <michael.kintzer@gmail.com> | 2014-11-26 13:34:52 -0800 |
commit | f7dbf388bd867cba7a66abf44affb09960ccb4c1 (patch) | |
tree | d43bc664499a45a009a84714f2e2d1da59cec5cc /actionpack | |
parent | 603e7f7ea507feb3cfea53c42b23be2b32dc240b (diff) | |
download | rails-f7dbf388bd867cba7a66abf44affb09960ccb4c1.tar.gz rails-f7dbf388bd867cba7a66abf44affb09960ccb4c1.tar.bz2 rails-f7dbf388bd867cba7a66abf44affb09960ccb4c1.zip |
allow 'all' for :domain option in addition to :all
Diffstat (limited to 'actionpack')
-rw-r--r-- | actionpack/lib/action_dispatch/middleware/cookies.rb | 2 | ||||
-rw-r--r-- | actionpack/test/dispatch/cookies_test.rb | 10 |
2 files changed, 11 insertions, 1 deletions
diff --git a/actionpack/lib/action_dispatch/middleware/cookies.rb b/actionpack/lib/action_dispatch/middleware/cookies.rb index 2f148752cb..f2d3e93aff 100644 --- a/actionpack/lib/action_dispatch/middleware/cookies.rb +++ b/actionpack/lib/action_dispatch/middleware/cookies.rb @@ -155,7 +155,7 @@ module ActionDispatch def handle_options(options) #:nodoc: options[:path] ||= "/" - if options[:domain] == :all + if options[:domain].respond_to?(:to_sym) && options[:domain].to_sym == :all # if there is a provided tld length then we use it otherwise default domain regexp domain_regexp = options[:tld_length] ? /([^.]+\.?){#{options[:tld_length]}}$/ : DOMAIN_REGEXP diff --git a/actionpack/test/dispatch/cookies_test.rb b/actionpack/test/dispatch/cookies_test.rb index ffa91d63c4..448a0e12eb 100644 --- a/actionpack/test/dispatch/cookies_test.rb +++ b/actionpack/test/dispatch/cookies_test.rb @@ -99,11 +99,21 @@ class CookiesTest < ActionController::TestCase head :ok end + def set_cookie_with_domain_all_as_string + cookies[:user_name] = {:value => "rizwanreza", :domain => 'all'} + head :ok + end + def delete_cookie_with_domain cookies.delete(:user_name, :domain => :all) head :ok end + def delete_cookie_with_domain_all_as_string + cookies.delete(:user_name, :domain => 'all') + head :ok + end + def set_cookie_with_domain_and_tld cookies[:user_name] = {:value => "rizwanreza", :domain => :all, :tld_length => 2} head :ok |