aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
diff options
context:
space:
mode:
authorRafael França <rafaelmfranca@gmail.com>2016-01-12 17:38:22 -0200
committerRafael França <rafaelmfranca@gmail.com>2016-01-12 17:38:22 -0200
commit858b9652ced5438127e6c6404bf3f9cae9699985 (patch)
tree1fbe5216c059aadf914bbb755d95723eeb723efa /actionpack
parent64448c29deb2f7239ac7e21035c05b8793ee1f47 (diff)
parent22288603645c95751f64245fc89fc259a27ad94c (diff)
downloadrails-858b9652ced5438127e6c6404bf3f9cae9699985.tar.gz
rails-858b9652ced5438127e6c6404bf3f9cae9699985.tar.bz2
rails-858b9652ced5438127e6c6404bf3f9cae9699985.zip
Merge pull request #23034 from claudiob/fix-ac-param-as-json
AC::Parameters#at_json: restore Rails 4.2’s value
Diffstat (limited to 'actionpack')
-rw-r--r--actionpack/lib/action_controller/metal/strong_parameters.rb3
-rw-r--r--actionpack/test/controller/parameters/accessors_test.rb6
2 files changed, 8 insertions, 1 deletions
diff --git a/actionpack/lib/action_controller/metal/strong_parameters.rb b/actionpack/lib/action_controller/metal/strong_parameters.rb
index b0a943c768..5cbf4157a4 100644
--- a/actionpack/lib/action_controller/metal/strong_parameters.rb
+++ b/actionpack/lib/action_controller/metal/strong_parameters.rb
@@ -109,7 +109,8 @@ module ActionController
cattr_accessor :permit_all_parameters, instance_accessor: false
cattr_accessor :action_on_unpermitted_parameters, instance_accessor: false
- delegate :keys, :key?, :has_key?, :empty?, :include?, :inspect, to: :@parameters
+ delegate :keys, :key?, :has_key?, :empty?, :include?, :inspect,
+ :as_json, to: :@parameters
# By default, never raise an UnpermittedParameters exception if these
# params are present. The default includes both 'controller' and 'action'
diff --git a/actionpack/test/controller/parameters/accessors_test.rb b/actionpack/test/controller/parameters/accessors_test.rb
index 97875c3cbb..a8f4d877a6 100644
--- a/actionpack/test/controller/parameters/accessors_test.rb
+++ b/actionpack/test/controller/parameters/accessors_test.rb
@@ -27,6 +27,12 @@ class ParametersAccessorsTest < ActiveSupport::TestCase
assert_not @params[:person][:name].permitted?
end
+ test "as_json returns the JSON representation of the parameters hash" do
+ assert_not @params.as_json.key? "parameters"
+ assert_not @params.as_json.key? "permitted"
+ assert @params.as_json.key? "person"
+ end
+
test "each carries permitted status" do
@params.permit!
@params.each { |key, value| assert(value.permitted?) if key == "person" }