summaryrefslogtreecommitdiff
path: root/test/spec_utils.rb
diff options
context:
space:
mode:
authorJeremy Evans <code@jeremyevans.net>2022-03-21 12:40:59 -0700
committerJeremy Evans <code@jeremyevans.net>2022-03-22 22:10:04 -0700
commit7e744efd6b204911b41a5c44a75da49ae1bb0d04 (patch)
treed2e721979093a4b5e87b57ce7f7bcdc0b17dfcec /test/spec_utils.rb
parent0c12d957f929d34cfd81a4a22f48bc9bce971032 (diff)
downloadrack-7e744efd6b204911b41a5c44a75da49ae1bb0d04.tar.gz
Add :escape_key option to set_cookie_header
This can be set to false to avoid escaping the key. This is a very explicit approach to allowing some cookie names to not be escaped. Fixes #1796
Diffstat (limited to 'test/spec_utils.rb')
-rw-r--r--test/spec_utils.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/test/spec_utils.rb b/test/spec_utils.rb
index d95d03c9..b368d204 100644
--- a/test/spec_utils.rb
+++ b/test/spec_utils.rb
@@ -599,6 +599,14 @@ describe Rack::Utils, "cookies" do
headers['set-cookie'].must_equal ['name=value', 'name2=value2', 'name2=value3']
end
+ it "encodes cookie key values by default" do
+ Rack::Utils.set_cookie_header('na e', 'value').must_equal 'na+e=value'
+ end
+
+ it "does not encode cookie key values if :escape_key is false" do
+ Rack::Utils.set_cookie_header('na e', value: 'value', escape_key: false).must_equal 'na e=value'
+ end
+
it "deletes cookies in header field" do
header = []