Permalink
Browse files

Don't set Content-Length on 304 responses

Commit 8aad8c claimed to do this, but it checks for the 304 status too early, before handle_conditional_get! has overridden it.

[#958 state:resolved]

Signed-off-by: Jonathan del Strother <jon.delStrother@bestbefore.tv>
Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
  • Loading branch information...
Jonathan del Strother authored and jeremy committed Sep 2, 2008
1 parent 6f932b4 commit 6cfb70023a7b102debaa7f1505b173556a285ae7
Showing with 7 additions and 1 deletion.
  1. +1 −1 actionpack/lib/action_controller/response.rb
  2. +6 −0 actionpack/test/controller/render_test.rb
@@ -129,8 +129,8 @@ def assign_default_content_type_and_charset!
def prepare!
assign_default_content_type_and_charset!
- set_content_length!
handle_conditional_get!
+ set_content_length!
convert_content_type!
end
@@ -1321,6 +1321,12 @@ def test_render_against_etag_request_should_304_when_match
assert @response.body.empty?
end
+ def test_render_against_etag_request_should_have_no_content_length_when_match
+ @request.if_none_match = etag_for("hello david")
+ get :render_hello_world_from_variable
+ assert !@response.headers.has_key?("Content-Length")
+ end
+
def test_render_against_etag_request_should_200_when_no_match
@request.if_none_match = etag_for("hello somewhere else")
get :render_hello_world_from_variable

0 comments on commit 6cfb700

Please sign in to comment.