diff options
author | Aaron Patterson <tenderlove@github.com> | 2019-02-25 13:33:22 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-02-25 13:33:22 -0800 |
commit | 790a3e69acb2fa172c6bce45e040e9f15d9bef3d (patch) | |
tree | fc6f2491bfbf7585466f908956745ecb0cf53b98 /actionpack | |
parent | d1f68b50487ea1a8fc7f822973e2cc46d1288060 (diff) | |
parent | 12c6e7b300d312fbaa6fd2d2d546419ff67bf910 (diff) | |
download | rails-790a3e69acb2fa172c6bce45e040e9f15d9bef3d.tar.gz rails-790a3e69acb2fa172c6bce45e040e9f15d9bef3d.tar.bz2 rails-790a3e69acb2fa172c6bce45e040e9f15d9bef3d.zip |
Merge pull request #35400 from aglushkov/stream_manual_cache_control
Allow custom cache-control header in AC::Live
Diffstat (limited to 'actionpack')
-rw-r--r-- | actionpack/lib/action_controller/metal/live.rb | 2 | ||||
-rw-r--r-- | actionpack/test/dispatch/live_response_test.rb | 8 |
2 files changed, 8 insertions, 2 deletions
diff --git a/actionpack/lib/action_controller/metal/live.rb b/actionpack/lib/action_controller/metal/live.rb index 083b762f5a..eb43ff9c63 100644 --- a/actionpack/lib/action_controller/metal/live.rb +++ b/actionpack/lib/action_controller/metal/live.rb @@ -146,7 +146,7 @@ module ActionController def write(string) unless @response.committed? - @response.set_header "Cache-Control", "no-cache" + @response.headers["Cache-Control"] ||= "no-cache" @response.delete_header "Content-Length" end diff --git a/actionpack/test/dispatch/live_response_test.rb b/actionpack/test/dispatch/live_response_test.rb index b673fd3805..f2459112b2 100644 --- a/actionpack/test/dispatch/live_response_test.rb +++ b/actionpack/test/dispatch/live_response_test.rb @@ -51,11 +51,17 @@ module ActionController assert_equal ["omg"], @response.body_parts end - def test_cache_control_is_set + def test_cache_control_is_set_by_default @response.stream.write "omg" assert_equal "no-cache", @response.headers["Cache-Control"] end + def test_cache_control_is_set_manually + @response.set_header("Cache-Control", "public") + @response.stream.write "omg" + assert_equal "public", @response.headers["Cache-Control"] + end + def test_content_length_is_removed @response.headers["Content-Length"] = "1234" @response.stream.write "omg" |