diff options
author | José Valim <jose.valim@gmail.com> | 2010-05-10 12:28:38 +0300 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2010-05-10 12:28:38 +0300 |
commit | 5c245b91d2dbc0b300e8193310b3f950d0cf6c4b (patch) | |
tree | bb5c50da70417ff7951d905cab2a70f14e21ebf6 /activerecord/test/cases | |
parent | ce5827ea4791e8b8143919ecceb0231e36e8932e (diff) | |
download | rails-5c245b91d2dbc0b300e8193310b3f950d0cf6c4b.tar.gz rails-5c245b91d2dbc0b300e8193310b3f950d0cf6c4b.tar.bz2 rails-5c245b91d2dbc0b300e8193310b3f950d0cf6c4b.zip |
Make sure valid? preceives the context as in ActiveModel API (ht: Carlos Antonio)
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r-- | activerecord/test/cases/validations_test.rb | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/activerecord/test/cases/validations_test.rb b/activerecord/test/cases/validations_test.rb index e1fb911cc9..b873babc36 100644 --- a/activerecord/test/cases/validations_test.rb +++ b/activerecord/test/cases/validations_test.rb @@ -62,6 +62,23 @@ class ValidationsTest < ActiveRecord::TestCase assert_equal ["is Wrong Update"], r.errors[:title], "A reply with a bad content should contain an error" end + def test_error_on_given_context + r = WrongReply.new + assert !r.valid?(:special_case) + assert "Invalid", r.errors[:title].join + + r.title = "secret" + r.content = "Good" + assert r.valid?(:special_case) + + r.title = nil + assert !r.save(:context => :special_case) + assert "Invalid", r.errors[:title].join + + r.title = "secret" + assert r.save(:context => :special_case) + end + def test_invalid_record_exception assert_raise(ActiveRecord::RecordInvalid) { WrongReply.create! } assert_raise(ActiveRecord::RecordInvalid) { WrongReply.new.save! } |