From 67d262f70f47154b2476b5fcadf21dd63ebc2597 Mon Sep 17 00:00:00 2001 From: lulalala Date: Sat, 22 Dec 2018 20:25:02 +0800 Subject: Add deprecation to slice! --- activemodel/lib/active_model/errors.rb | 2 ++ activemodel/test/cases/errors_test.rb | 8 +++----- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'activemodel') diff --git a/activemodel/lib/active_model/errors.rb b/activemodel/lib/active_model/errors.rb index 3ba33bee4d..7c6346f577 100644 --- a/activemodel/lib/active_model/errors.rb +++ b/activemodel/lib/active_model/errors.rb @@ -147,6 +147,8 @@ module ActiveModel # person.errors.slice!(:age, :gender) # => { :name=>["cannot be nil"], :city=>["cannot be nil"] } # person.errors.keys # => [:age, :gender] def slice!(*keys) + deprecation_removal_warning(:slice!) + keys = keys.map(&:to_sym) results = messages.slice!(*keys) diff --git a/activemodel/test/cases/errors_test.rb b/activemodel/test/cases/errors_test.rb index 048b8a92fb..5dbbf910de 100644 --- a/activemodel/test/cases/errors_test.rb +++ b/activemodel/test/cases/errors_test.rb @@ -563,11 +563,9 @@ class ErrorsTest < ActiveModel::TestCase person.errors.add(:gender, "cannot be nil") person.errors.add(:city, "cannot be nil") - person.errors.slice!(:age, "gender") + assert_deprecated { person.errors.slice!(:age, "gender") } - assert_deprecated do - assert_equal [:age, :gender], person.errors.keys - end + assert_equal [:age, :gender], assert_deprecated { person.errors.keys } end test "slice! returns the deleted errors" do @@ -577,7 +575,7 @@ class ErrorsTest < ActiveModel::TestCase person.errors.add(:gender, "cannot be nil") person.errors.add(:city, "cannot be nil") - removed_errors = person.errors.slice!(:age, "gender") + removed_errors = assert_deprecated { person.errors.slice!(:age, "gender") } assert_equal({ name: ["cannot be nil"], city: ["cannot be nil"] }, removed_errors) end -- cgit v1.2.3