Merge pull request #24304 from rthbound/24239-work

Fixes #24239
This commit is contained in:
Andrew White 2016-04-04 21:50:26 +01:00
commit 0f51dda718
3 changed files with 31 additions and 1 deletions

View File

@ -1,3 +1,12 @@
* Adds support for including ActionController::Cookies in API controllers.
Previously, including the module would raise when trying to define
a `cookies` helper method. Skip calling #helper_method if it is not
defined -- if we don't have helpers, we needn't define one.
Fixes #24304
*Ryan T. Hosford*
* ETags: Introduce `Response#strong_etag=` and `#weak_etag=` and analogous
options for `fresh_when` and `stale?`. `Response#etag=` sets a weak ETag.

View File

@ -3,7 +3,7 @@ module ActionController #:nodoc:
extend ActiveSupport::Concern
included do
helper_method :cookies
helper_method :cookies if defined?(helper_method)
end
private

View File

@ -0,0 +1,21 @@
require 'abstract_unit'
class WithCookiesController < ActionController::API
include ActionController::Cookies
def with_cookies
render plain: cookies[:foobar]
end
end
class WithCookiesTest < ActionController::TestCase
tests WithCookiesController
def test_with_cookies
request.cookies[:foobar] = 'bazbang'
get :with_cookies
assert_equal 'bazbang', response.body
end
end