aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test
diff options
context:
space:
mode:
authorYves Senn <yves.senn@gmail.com>2013-11-04 19:54:46 +0100
committerYves Senn <yves.senn@gmail.com>2013-11-05 17:44:08 +0100
commit6c720d18a2770299433fae82c1cab25d0bd4033e (patch)
tree9e9939ef8bd1aab35d3b5ac775d9802200e24d60 /activerecord/test
parent81a528fc0caff94e837249e51bf96d65c4967c7b (diff)
downloadrails-6c720d18a2770299433fae82c1cab25d0bd4033e.tar.gz
rails-6c720d18a2770299433fae82c1cab25d0bd4033e.tar.bz2
rails-6c720d18a2770299433fae82c1cab25d0bd4033e.zip
direct enum assignment rasies ArgumentError for unknown values.
Diffstat (limited to 'activerecord/test')
-rw-r--r--activerecord/test/cases/enum_test.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/activerecord/test/cases/enum_test.rb b/activerecord/test/cases/enum_test.rb
index bb9faccf1b..087db4c32c 100644
--- a/activerecord/test/cases/enum_test.rb
+++ b/activerecord/test/cases/enum_test.rb
@@ -40,4 +40,16 @@ class EnumTest < ActiveRecord::TestCase
assert_equal "do publish work...", @book.published!
assert @book.published?
end
+
+ test "direct assignment" do
+ @book.status = :written
+ assert @book.written?
+ end
+
+ test "assign non existing value raises an error" do
+ e = assert_raises(ArgumentError) do
+ @book.status = :unknown
+ end
+ assert_equal "'unknown' is not a valid status", e.message
+ end
end