aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test/controller/parameters
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack/test/controller/parameters')
-rw-r--r--actionpack/test/controller/parameters/parameters_permit_test.rb21
1 files changed, 21 insertions, 0 deletions
diff --git a/actionpack/test/controller/parameters/parameters_permit_test.rb b/actionpack/test/controller/parameters/parameters_permit_test.rb
index c8cc654afd..b9d2145eb4 100644
--- a/actionpack/test/controller/parameters/parameters_permit_test.rb
+++ b/actionpack/test/controller/parameters/parameters_permit_test.rb
@@ -1,6 +1,7 @@
require 'abstract_unit'
require 'action_dispatch/http/upload'
require 'action_controller/metal/strong_parameters'
+require 'active_support/core_ext/hash/transform_values'
class ParametersPermitTest < ActiveSupport::TestCase
def assert_filtered_out(params, key)
@@ -204,6 +205,9 @@ class ParametersPermitTest < ActiveSupport::TestCase
assert !@params.fetch(:person).permitted?
assert !@params.values_at(:person).first.permitted?
+
+ assert !@params.transform_keys { |k| k }.permitted?
+ assert !@params.transform_values { |v| v }.permitted?
end
test "permitted is sticky on accessors" do
@@ -217,17 +221,34 @@ class ParametersPermitTest < ActiveSupport::TestCase
assert @params.fetch(:person).permitted?
assert @params.values_at(:person).first.permitted?
+
+ assert @params.transform_keys { |k| k }.permitted?
+ assert @params.transform_values { |v| v }.permitted?
end
test "not permitted is sticky on mutators" do
assert !@params.delete_if { |k| k == "person" }.permitted?
assert !@params.keep_if { |k,v| k == "person" }.permitted?
+
+ assert !@params.slice!(:person).permitted?
+
+ assert !@params.extract!(:person).permitted?
+
+ assert !@params.transform_keys! { |k| k }.permitted?
+ assert !@params.transform_values! { |v| v }.permitted?
end
test "permitted is sticky on mutators" do
@params.permit!
assert @params.delete_if { |k| k == "person" }.permitted?
assert @params.keep_if { |k,v| k == "person" }.permitted?
+
+ assert @params.slice!(:person).permitted?
+
+ assert @params.extract!(:person).permitted?
+
+ assert @params.transform_keys! { |k| k }.permitted?
+ assert @params.transform_values! { |v| v }.permitted?
end
test "not permitted is sticky beyond merges" do