lambda の代わりに expect を使う
RSpecでたとえば例外のテストコードを書くとして、
it "should raise CommandError in unknown command" do lambda { LocalPort.command.find("foo") }.should raise_error( LocalPort::CommandError, "foo" ) end
このlambda {...}.should
は読み手からしたら意図が伝わりにくいので、expect {...}.to
を使うとすんなり読める。
it "should raise CommandError in unknown command" do expect { LocalPort.command.find("foo") }.to raise_error( LocalPort::CommandError, "foo" ) end
RSpec bookのSection13#Ch, ch, ch, ch, changesでexpectを使うサンプルコードが載っている。あとは、Relishにも詳しく書いてある。