summaryrefslogtreecommitdiff
path: root/test/spec_utils.rb
diff options
context:
space:
mode:
authorJeremy Evans <code@jeremyevans.net>2020-01-28 17:23:54 -0800
committerSamuel Williams <samuel.williams@oriontransfer.co.nz>2020-01-30 12:26:19 +1300
commit8539124842df0212307287c4e381ff25f4719ca8 (patch)
tree4771c28f183d925f257c3ae02956e6b980a06832 /test/spec_utils.rb
parent022815d3264781bd9cbd4d8d514998baabbc3edd (diff)
downloadrack-8539124842df0212307287c4e381ff25f4719ca8.tar.gz
More covering tests
3352 / 3378 LOC (99.23%) covered
Diffstat (limited to 'test/spec_utils.rb')
-rw-r--r--test/spec_utils.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/spec_utils.rb b/test/spec_utils.rb
index 88ad64f5..5064be43 100644
--- a/test/spec_utils.rb
+++ b/test/spec_utils.rb
@@ -546,6 +546,30 @@ describe Rack::Utils, "cookies" do
Rack::Utils.add_cookie_to_header(Object.new, 'name', 'value')
}.must_raise ArgumentError
end
+
+ it "sets and deletes cookies in header hash" do
+ header = {'Set-Cookie'=>''}
+ Rack::Utils.set_cookie_header!(header, 'name', 'value').must_be_nil
+ header['Set-Cookie'].must_equal 'name=value'
+ Rack::Utils.set_cookie_header!(header, 'name2', 'value2').must_be_nil
+ header['Set-Cookie'].must_equal "name=value\nname2=value2"
+ Rack::Utils.set_cookie_header!(header, 'name2', 'value3').must_be_nil
+ header['Set-Cookie'].must_equal "name=value\nname2=value2\nname2=value3"
+
+ Rack::Utils.delete_cookie_header!(header, 'name2').must_be_nil
+ header['Set-Cookie'].must_equal "name=value\nname2=; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 GMT"
+ Rack::Utils.delete_cookie_header!(header, 'name').must_be_nil
+ header['Set-Cookie'].must_equal "name2=; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 GMT\nname=; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 GMT"
+
+ header = {'Set-Cookie'=>nil}
+ Rack::Utils.delete_cookie_header!(header, 'name').must_be_nil
+ header['Set-Cookie'].must_equal "name=; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 GMT"
+
+ header = {'Set-Cookie'=>[]}
+ Rack::Utils.delete_cookie_header!(header, 'name').must_be_nil
+ header['Set-Cookie'].must_equal "name=; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 GMT"
+ end
+
end
describe Rack::Utils, "byte_range" do
@@ -745,6 +769,8 @@ describe Rack::Utils::Context do
r2.must_equal 4
r3 = c3.call(:misc_symbol)
r3.must_be_nil
+ r3 = c2.context(:misc_symbol, test_target3)
+ r3.must_be_nil
r4 = Rack::MockRequest.new(a4).get('/')
r4.status.must_equal 200
r5 = Rack::MockRequest.new(a5).get('/')