Make sure last_modified! works with <= rather than just equality.

This commit is contained in:
Michael Koziarski 2008-10-07 21:09:07 +02:00
parent 5556db22c5
commit aec391621b
2 changed files with 9 additions and 1 deletions

@ -969,7 +969,9 @@ def head(*args)
# If-Modified-Since request header is <= last modified.
def last_modified!(utc_time)
response.last_modified= utc_time
head(:not_modified) if response.last_modified == request.if_modified_since
if request.if_modified_since && request.if_modified_since <= utc_time
head(:not_modified)
end
end
# Sets the ETag response header. Returns 304 Not Modified if the

@ -1441,6 +1441,12 @@ def test_request_with_bang_obeys_last_modified
get :conditional_hello_with_bangs
assert_response :not_modified
end
def test_last_modified_works_with_less_than_too
@request.if_modified_since = 5.years.ago.httpdate
get :conditional_hello_with_bangs
assert_response :not_modified
end
end
class RenderingLoggingTest < Test::Unit::TestCase