2010-03-13
RSpecで自分フォーマッター
ずっとやってみたかったけど、後回しにしていたことをやっとやってみました。
思ったより簡単。
まずはシンプルに、個人的な欲求で、RDocドキュメント化するときにPendingsやFailuresが下部に表示されないようにするフォーマッタ作成。
クラス定義は既存のFormatterを継承して簡単です。
require "spec/runner/formatter/sepcdoc_formatter" module Spec::Runner::Formatter class SpecdocWithoutPendingsFormatter < SpecDocFormatter # 何もしないように上書きするだけ def dump_pending end def dump_failure(counter, failure) end end end
Spec::Runner::Formatter内にクラス定義する必要はないです。
これを使うには実行時にオプションに指定
-- require spec/formatters/without_pendings_formatter.rb # ファイル指定 -- format Spec::Runner::Formatter::SpecdocWithoutPendingsFormatter
この require オプションが普通に便利そうですね。
ExampleやExampleGroupの値や挙動をいじれそうです。
オプションが長いので、これを打つのは大変です。
Spec::Runner::Options::EXAMPLE_FORMATTERS Hash に値を追加してショートカットとかできそうですが、
とりあえずオプションファイルで書いておいて --option 指定する方法に落ち着きました。
spec spec_file_spec.rb -O spec/formatters/without_pendings_formatter
というかんじで使ってます。
トラックバック - http://d.hatena.ne.jp/PvP/20100313/1268438711
リンク元
- 24 http://www.google.co.jp/search?q=javascript+コールバック&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja-JP-mac:official&hl=ja&client=firefox-a
- 22 http://wota.jp/ac/?date=20091222
- 22 http://www.google.co.jp/search?q=git+pull+fetch&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&hl=ja&client=firefox-a
- 19 http://d.hatena.ne.jp/thrakt/20090926/1253963667
- 16 http://www.google.co.jp/search?hl=ja&safe=off&client=firefox-a&hs=WpJ&rls=org.mozilla:ja-JP-mac:official&q=タイトル考え中+pvp&lr=&aq=f&aqi=&aql=&oq=
- 15 http://www.google.com/search?client=ubuntu&channel=fs&q=vim+ファイル間&ie=utf-8&oe=utf-8
- 14 http://www.google.co.jp/search?hl=ja&source=hp&q=git+fetch+pull&lr=&aq=f&aqi=&aql=&oq=&gs_rfai=
- 14 http://www.google.co.jp/search?q=git+fetch+pull&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&hl=ja&client=firefox-a
- 13 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rlz=1T4GGLJ_ja&q=javascript+コールバック
- 12 http://www.google.co.jp/search?hl=ja&lr=lang_ja&tbs=lr:lang_1ja&q=gitignore+例外&aq=2&aqi=g4&aql=&oq=gitignore+&gs_rfai=