Make test_initialize_with_invalid_attribute
work correctly
Originally specified attributes were only normal values, and `ActiveRecord::MultiparameterAssignmentErrors` did not occur. In addition, an assertion is performed only on rescue, even if an exception does not occur, the test passes. To avoid this use `assert_raise`.
This commit is contained in:
parent
445a74e1a9
commit
7ea546b5c6
@ -282,11 +282,13 @@ def test_initialize_with_attributes
|
||||
end
|
||||
|
||||
def test_initialize_with_invalid_attribute
|
||||
Topic.new("title" => "test",
|
||||
"last_read(1i)" => "2005", "last_read(2i)" => "2", "last_read(3i)" => "31")
|
||||
rescue ActiveRecord::MultiparameterAssignmentErrors => ex
|
||||
ex = assert_raise(ActiveRecord::MultiparameterAssignmentErrors) do
|
||||
Topic.new("title" => "test",
|
||||
"written_on(4i)" => "16", "written_on(5i)" => "24", "written_on(6i)" => "00")
|
||||
end
|
||||
|
||||
assert_equal(1, ex.errors.size)
|
||||
assert_equal("last_read", ex.errors[0].attribute)
|
||||
assert_equal("written_on", ex.errors[0].attribute)
|
||||
end
|
||||
|
||||
def test_create_after_initialize_without_block
|
||||
|
Loading…
Reference in New Issue
Block a user