diff options
author | Benjamin Quorning <benjamin@quorning.net> | 2016-02-17 14:44:32 +0100 |
---|---|---|
committer | Benjamin Quorning <benjamin@quorning.net> | 2016-02-19 09:18:08 +0100 |
commit | 08fd9f4f1174ce20f8ecbcda1c2509bb598ce200 (patch) | |
tree | bf7cd3c5a02ea21684e1f80305b2d9235957db37 /actionpack/test/controller | |
parent | 9d2ea7f623711d13cfcf536de61012f4879c344b (diff) | |
download | rails-08fd9f4f1174ce20f8ecbcda1c2509bb598ce200.tar.gz rails-08fd9f4f1174ce20f8ecbcda1c2509bb598ce200.tar.bz2 rails-08fd9f4f1174ce20f8ecbcda1c2509bb598ce200.zip |
Fix AC::Parameters#== with other AC::Parameters
Creating a protected getter method for `@parameters`.
Diffstat (limited to 'actionpack/test/controller')
-rw-r--r-- | actionpack/test/controller/parameters/accessors_test.rb | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/actionpack/test/controller/parameters/accessors_test.rb b/actionpack/test/controller/parameters/accessors_test.rb index 7f46c6439c..ef8eb5f33e 100644 --- a/actionpack/test/controller/parameters/accessors_test.rb +++ b/actionpack/test/controller/parameters/accessors_test.rb @@ -135,6 +135,39 @@ class ParametersAccessorsTest < ActiveSupport::TestCase assert(params1 == hash1) end + test "is equal to Parameters instance with same params" do + params1 = ActionController::Parameters.new(a: 1, b: 2) + params2 = ActionController::Parameters.new(a: 1, b: 2) + assert(params1 == params2) + end + + test "is equal to Parameters instance with same permitted params" do + params1 = ActionController::Parameters.new(a: 1, b: 2).permit(:a) + params2 = ActionController::Parameters.new(a: 1, b: 2).permit(:a) + assert(params1 == params2) + end + + test "is equal to Parameters instance with same different source params, but same permitted params" do + params1 = ActionController::Parameters.new(a: 1, b: 2).permit(:a) + params2 = ActionController::Parameters.new(a: 1, c: 3).permit(:a) + assert(params1 == params2) + assert(params2 == params1) + end + + test 'is not equal to an unpermitted Parameters instance with same params' do + params1 = ActionController::Parameters.new(a: 1).permit(:a) + params2 = ActionController::Parameters.new(a: 1) + assert(params1 != params2) + assert(params2 != params1) + end + + test "is not equal to Parameters instance with different permitted params" do + params1 = ActionController::Parameters.new(a: 1, b: 2).permit(:a, :b) + params2 = ActionController::Parameters.new(a: 1, b: 2).permit(:a) + assert(params1 != params2) + assert(params2 != params1) + end + test "equality with simple types works" do assert(@params != 'Hello') assert(@params != 42) |