なんでもいいから例外を期待するassert
調べたところ、assert_raiseという例外を期待するassertはあるのですが、
投げる例外クラスを指定する必要があるようで、投げられる例外クラスがわからないけど、
とにかく例外を投げてくれることを期待するassertはないようです。
なので作りました。
module Test module Unit module Assertions def assert_raise_something(message=nil) actual_exception=nil message="assert block not raised." unless message assert_block(message) do begin yield rescue Exception => actual_exception break true end false end end end end end
これをtest_helper.rbに追加して、
assert_raise_something{jikken.save!}
のようにして例外を起こすかどうかをassertします。
ブロックで引数を渡します。メッセージを変えたいときは
assert_raise_something("This test was not raised."){jikken.save!}
のように変更します。