blog.sowatchasayin

Rails etc.

shoudaのマクロにブロックを渡すときの罠

shouldaのマクロを追加してActiveRecord::RecordNotFoundが起こるかチェックしてみたらどうだろう、と思っていろいろやってみて、こうなりました。

こう、呼んであげればと…。

should_raise_record_not_found {get :edit, :id => @なんか.id}


block.bind(self).callで悩んだ。
shouldメソッドに渡すブロックには違うbindingが与えられるので、わざわざselfのを渡しなおしてあげないといけないってことのようでした(たぶん)。
ちょっとしたブロックつきのマクロをたくさん作れるのは便利なんですが、このあたりがちょっと面倒ですね…。

No comments:

Post a Comment

Author

Fujimura Daisuke
http://fujimuradaisuke.com

Labels