aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test/controller/parameters
diff options
context:
space:
mode:
authorPrathamesh Sonpatki <csonpatki@gmail.com>2015-12-30 19:50:25 +0530
committerPrathamesh Sonpatki <csonpatki@gmail.com>2015-12-31 12:32:29 +0530
commit28f648dbc7e1523295a89b670db30c4542b8fb5a (patch)
treeca721ebca956780a25858aa08f8e1f69d791124e /actionpack/test/controller/parameters
parent892658a3d266828bd30d20101cab67de1e889278 (diff)
downloadrails-28f648dbc7e1523295a89b670db30c4542b8fb5a.tar.gz
rails-28f648dbc7e1523295a89b670db30c4542b8fb5a.tar.bz2
rails-28f648dbc7e1523295a89b670db30c4542b8fb5a.zip
Fix AC::Parameters#to_unsafe_h to return all unfiltered values
- AC::Parameters#convert_parameters_to_hashes should return filtered or unfiltered values based on whether it is called from `to_h` or `to_unsafe_h` instead of always defaulting to `to_h`. - Fixes #22841
Diffstat (limited to 'actionpack/test/controller/parameters')
-rw-r--r--actionpack/test/controller/parameters/parameters_permit_test.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/actionpack/test/controller/parameters/parameters_permit_test.rb b/actionpack/test/controller/parameters/parameters_permit_test.rb
index fb72fca789..9a79784ec7 100644
--- a/actionpack/test/controller/parameters/parameters_permit_test.rb
+++ b/actionpack/test/controller/parameters/parameters_permit_test.rb
@@ -298,6 +298,14 @@ class ParametersPermitTest < ActiveSupport::TestCase
assert_not @params.to_h.is_a? ActionController::Parameters
end
+ test "to_unsafe_h returns unfiltered params even after accessing few keys" do
+ params = ActionController::Parameters.new("f"=>{"language_facet"=>["Tibetan"]})
+ expected = {"f"=>{"language_facet"=>["Tibetan"]}}
+
+ assert params['f'].is_a? ActionController::Parameters
+ assert_equal expected, params.to_unsafe_h
+ end
+
test "to_h only deep dups Ruby collections" do
company = Class.new do
attr_reader :dupped