diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2011-02-09 09:19:15 -0800 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2011-02-09 09:19:56 -0800 |
commit | f48d32c0cff36cb505443ff72738def3a82c2886 (patch) | |
tree | b988980a20d287f9b6279a5d26e8d890a2e0a866 /activemodel | |
parent | 39310f7930185ed415221607ee0188b692794ea7 (diff) | |
download | rails-f48d32c0cff36cb505443ff72738def3a82c2886.tar.gz rails-f48d32c0cff36cb505443ff72738def3a82c2886.tar.bz2 rails-f48d32c0cff36cb505443ff72738def3a82c2886.zip |
implementing include? on AM::Errors
Diffstat (limited to 'activemodel')
-rw-r--r-- | activemodel/lib/active_model/errors.rb | 5 | ||||
-rw-r--r-- | activemodel/test/cases/errors_test.rb | 6 |
2 files changed, 11 insertions, 0 deletions
diff --git a/activemodel/lib/active_model/errors.rb b/activemodel/lib/active_model/errors.rb index 003c94a409..5e3cf510b0 100644 --- a/activemodel/lib/active_model/errors.rb +++ b/activemodel/lib/active_model/errors.rb @@ -84,6 +84,11 @@ module ActiveModel messages.clear end + # Do the error messages include an error with key +error+? + def include?(error) + messages.include? error + end + # Get messages for +key+ def get(key) messages[key] diff --git a/activemodel/test/cases/errors_test.rb b/activemodel/test/cases/errors_test.rb index 8cb8f7ba44..a24cac40ad 100644 --- a/activemodel/test/cases/errors_test.rb +++ b/activemodel/test/cases/errors_test.rb @@ -27,6 +27,12 @@ class ErrorsTest < ActiveModel::TestCase end end + def test_include? + errors = ActiveModel::Errors.new(self) + errors[:foo] = 'omg' + assert errors.include?(:foo), 'errors should include :foo' + end + test "should return true if no errors" do person = Person.new person.errors[:foo] |