kiyoka.2011_08_23 RSSPLAIN

Related pages: !kiyoka.blog.list !kiyoka.blog.2011_08
554445545444444454544544445
5

[Sekka] RSpecのformatterのカスタマイズ

5

最近RSpecによるテストを Emacs の M-x compile で実行するようにした。

4

何がいいかというと、エラー行に飛べるようになる。

4

TDDによる開発を行う時は、先にテストケースを書いて、まだ製品コードが未実装の状態でテストがFailすることを確認してから製品コードを書き始める。

4

そんな中、あまりにもFailした行に飛ぶのが面倒臭くなったのでEmacsが使えないか模索してみた。

5

 

5

 

4

M-x compileを実行する

5

 

4

RSpecの標準フォーマッタでは、RSpecが出力する飾りの # 記号が邪魔をしてEmacsが正しいファイル名を取得できない。

4

また、#を取るだけでは、RSpecツール本体の内部関数まで出てしまってじゃまだった。

4

それら直した結果、以下のように該当する行だけをエラー行と認識し、タグジャンプできるようになった。

4

yJg6

4

次のエラーメッセージにTabキーで移動、Returnキーでエラーソース行に移動する

4

GOXT

4

ここまで作ってみたけど、EmacsにはRSpec実行するモードがあるんだろうな。ちょっと調べた限りでは見つかならなかったけど。

5

せっかく作ったのでカスタマイズしたフォーマッタをRSpecの本家にpull requestしてみるかな。

4

しかし、ちょっとしたローカルの変更とpull requsestダブリューするまでの敷居が以外と高いのでどうするか迷い中。

5

 

4

今回書いたフォーマッタはこのソース。

4

RSpec formatter for Emacs E-x compile feature — GistEXT

5

 

4

次のように特別なオプションを指定してRSpecを実行する。

4
time rspec -I ./lib -b ./test/nendo_spec.rb  -r ./test/rspec_formatter_for_emacs.rb -f CustomFormatter
4

 

4

 

5

...comment disabled...