aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/zero/response.rb7
-rw-r--r--spec/unit/response/response_spec.rb11
2 files changed, 18 insertions, 0 deletions
diff --git a/lib/zero/response.rb b/lib/zero/response.rb
index 74b2e28..85e7469 100644
--- a/lib/zero/response.rb
+++ b/lib/zero/response.rb
@@ -38,5 +38,12 @@ module Zero
[@status, @header, @body]
end
+ # Sets the content length header to the current length of the body
+ # Also creates one, if it does not exists
+ #
+ def content_length
+ header['Content-Length'] = 0
+ end
+
end
end
diff --git a/spec/unit/response/response_spec.rb b/spec/unit/response/response_spec.rb
index d22acdd..0bb0c4e 100644
--- a/spec/unit/response/response_spec.rb
+++ b/spec/unit/response/response_spec.rb
@@ -16,6 +16,9 @@ describe Zero::Response do
value[1].should eq({}) # Headers
value[2].should eq([]) # Body
end
+
+ it "returns the content length in the header" do
+ end
end
describe '#status' do
@@ -44,4 +47,12 @@ describe Zero::Response do
end
end
+ describe '#content_length' do
+ it "sets the content_length to 0, if there is no content" do
+ subject.content_length
+
+ subject.header['Content-Length'].should eq(0)
+ end
+ end
+
end \ No newline at end of file