summaryrefslogtreecommitdiff
path: root/test/spec_utils.rb
diff options
context:
space:
mode:
authorSamuel Williams <samuel.williams@oriontransfer.co.nz>2022-04-27 14:50:44 +1200
committerGitHub <noreply@github.com>2022-04-26 19:50:44 -0700
commit504f1d56e60613d3d43c4271ebab8fff2d35a157 (patch)
tree65c44787e7503fedd9bcc400b3012e0f721d9b74 /test/spec_utils.rb
parent11b4ac5237b25ba773ca519cc4e508c9008bed65 (diff)
downloadrack-504f1d56e60613d3d43c4271ebab8fff2d35a157.tar.gz
Don't overwrite other cookie attributes when building deletion cookie. (#1846)
Diffstat (limited to 'test/spec_utils.rb')
-rw-r--r--test/spec_utils.rb28
1 files changed, 26 insertions, 2 deletions
diff --git a/test/spec_utils.rb b/test/spec_utils.rb
index 3f50be7a..286f2eb1 100644
--- a/test/spec_utils.rb
+++ b/test/spec_utils.rb
@@ -648,9 +648,33 @@ describe Rack::Utils, "cookies" do
header = []
Rack::Utils.delete_set_cookie_header!(header, 'name2')
- header.must_equal ["name2=; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 GMT"]
+ header.must_equal [
+ "name2=; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 GMT"
+ ]
+
Rack::Utils.delete_set_cookie_header!(header, 'name')
- header.must_equal ["name2=; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 GMT", "name=; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 GMT"]
+ header.must_equal [
+ "name2=; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 GMT",
+ "name=; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 GMT"
+ ]
+ end
+
+ it "deletes cookies in header field with domain" do
+ header = []
+
+ Rack::Utils.delete_set_cookie_header!(header, 'name', {domain: "mydomain.com"})
+ header.must_equal [
+ "name=; domain=mydomain.com; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 GMT"
+ ]
+ end
+
+ it "deletes cookies in header field with path" do
+ header = []
+
+ Rack::Utils.delete_set_cookie_header!(header, 'name', {path: "/a/b"})
+ header.must_equal [
+ "name=; path=/a/b; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 GMT"
+ ]
end
it "sets and deletes cookies in header hash" do