From dfab30daae0f1748c0e93009583dc33dbc838a7c Mon Sep 17 00:00:00 2001 From: "Hongli Lai (Phusion)" Date: Wed, 17 Jun 2009 17:19:19 -0500 Subject: Add unit tests for Rack::Util::HeaderHash#delete. [#54 state:resolved] Signed-off-by: Joshua Peek --- test/spec_rack_utils.rb | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/test/spec_rack_utils.rb b/test/spec_rack_utils.rb index 7dd5880e..d1823cd5 100644 --- a/test/spec_rack_utils.rb +++ b/test/spec_rack_utils.rb @@ -181,6 +181,30 @@ context "Rack::Utils::HeaderHash" do h = Rack::Utils::HeaderHash.new("foo" => ["bar", "baz"]) h.to_hash.should.equal({ "foo" => "bar\nbaz" }) end + + specify "should be able to delete the given key case-sensitively" do + h = Rack::Utils::HeaderHash.new("foo" => "bar") + h.delete("foo") + h["foo"].should.be.nil + h["FOO"].should.be.nil + end + + specify "should be able to delete the given key case-insensitively" do + h = Rack::Utils::HeaderHash.new("foo" => "bar") + h.delete("FOO") + h["foo"].should.be.nil + h["FOO"].should.be.nil + end + + specify "should return the deleted value when #delete is called on an existing key" do + h = Rack::Utils::HeaderHash.new("foo" => "bar") + h.delete("Foo").should.equal("bar") + end + + specify "should return nil when #delete is called on a non-existant key" do + h = Rack::Utils::HeaderHash.new("foo" => "bar") + h.delete("Hello").should.be.nil + end end context "Rack::Utils::Context" do -- cgit v1.2.1