未踏作業日誌――余計なもの作るよ!

未踏の作業日誌的なものを書きましょうということで書くことにしました.余計なことばっかりしています.

RSpecのexpectとraise_errorで詰まる

Rails4からRSpecでテストを評価したいとき,shouldではなくexpectを使うようにするのが望ましいとのこと.

Ruby - RSpecのshouldはもう古い!新しい記法expectを使おう! - Qiita

このリンク先では標準的な使い方の場合,expect()を使っている.メソッドとして結果を引数を渡す使い方は一応,間違ってはいないし,これでも正常に動く.

一方で,raise_errorを使って例外が発生したのかどうかチェックしたいときは,引数を渡す方法では延々と成功しない.

raise_errorを使う場合は,ブロックで例外の発生するコードを囲わないとうまく動作しない.

gist9033476

 上のリンクできちんとまとめられてはいるが,よく見ると中括弧なのでコードを書くときは注意しなければならない.