diff options
author | Piotr Sarnacki <drogus@gmail.com> | 2012-01-16 17:22:44 +0100 |
---|---|---|
committer | Piotr Sarnacki <drogus@gmail.com> | 2012-01-16 17:23:40 +0100 |
commit | 8e8982cf3bd6358c1639a4def8970f932a9b8980 (patch) | |
tree | 83d188e1bf3dde807530a15b5b85b05c9b4bcab0 /activemodel | |
parent | 3100b99b549dc6734bbed3ef4459c91da6eeb43e (diff) | |
download | rails-8e8982cf3bd6358c1639a4def8970f932a9b8980.tar.gz rails-8e8982cf3bd6358c1639a4def8970f932a9b8980.tar.bz2 rails-8e8982cf3bd6358c1639a4def8970f932a9b8980.zip |
Add ActiveModel::Errors#delete, which was not available after move to use delegation
Diffstat (limited to 'activemodel')
-rw-r--r-- | activemodel/lib/active_model/errors.rb | 5 | ||||
-rw-r--r-- | activemodel/test/cases/errors_test.rb | 7 |
2 files changed, 12 insertions, 0 deletions
diff --git a/activemodel/lib/active_model/errors.rb b/activemodel/lib/active_model/errors.rb index 025915fe6f..c6535082d3 100644 --- a/activemodel/lib/active_model/errors.rb +++ b/activemodel/lib/active_model/errors.rb @@ -99,6 +99,11 @@ module ActiveModel messages[key] = value end + # Delete messages for +key+ + def delete(key) + messages.delete(key) + end + # When passed a symbol or a name of a method, returns an array of errors # for the method. # diff --git a/activemodel/test/cases/errors_test.rb b/activemodel/test/cases/errors_test.rb index 8ddedb160a..4edeece3e8 100644 --- a/activemodel/test/cases/errors_test.rb +++ b/activemodel/test/cases/errors_test.rb @@ -27,6 +27,13 @@ class ErrorsTest < ActiveModel::TestCase end end + def test_delete + errors = ActiveModel::Errors.new(self) + errors[:foo] = 'omg' + errors.delete(:foo) + assert_empty errors[:foo] + end + def test_include? errors = ActiveModel::Errors.new(self) errors[:foo] = 'omg' |