turnip_formatter (0.3.2): RSpec custom formatter for Turnip http://t.co/XsqxbKZicQ
— RubyGems (@rubygems) 2014, 9月 27
gnawrnip (0.3.1): Gnawrnip is a TurnipFormatter Add-on that provides put a screen shot to report use Capybara http://t.co/gzseaT3wy1
— RubyGems (@rubygems) 2014, 9月 30
turnip_formatter
https://github.com/gongo/turnip_formatter/releases/tag/v0.3.2
書いてある通り turnip 1.2.4 対応なんですが、実際にはリファクタです。
[Cleaning Code] Wrap Turnip::Rspec.run by gongo · Pull Request #52 · gongo/turnip_formatter
これまでは turnip/rspec.rb
をモンキーパッチするみたいなことをしていたので
こんな感じ でかなりひどい状態でした。見てわかる通りバージョンアップについていけないなと思ったので今回で少し綺麗にしました。
モンキーパッチはあいかわらずなんですが、どちらかというと wrap するイメージに変更
turnip_formatter/rspec.rb at v0.3.2 · gongo/turnip_formatter
RSpec.world.example_groups
のあたりが多少不安でしたが、今のところ動いてるようなので良かった。
もしかしたら test-queue だと動かないんじゃないかなーって思ったりもしてます。
(parallel_rspec
は rspec プロセスを分けるので大丈夫のはず。test-queue
も、もうちょっと調べてみないと)
gnawrnip
https://github.com/gongo/gnawrnip/releases/tag/v0.3.1
メインの修正はスクリーンショットを撮るタイミングの変更です。
これまでは Capybara::Session.NODE_METHOD と他いくつか のメソッド実行前に呼ぶ、というものでしたが、has_button?
とか title
で呼ぶのかなり無駄だったので、アクション系操作に限定した、というものです。
あとは「エラー出た瞬間だけ撮る」「ステップ毎に撮る」「アクション毎に撮る」の3種類に増やそうかとも思いましたが、「ステップ毎に撮る」がまだモンキーパッチ祭りになりそうだったので一旦締め。思いついたらまた挑戦します
まとめ
これらの gem を更にモンキーパッチしている酔狂な人はいないと思ってるので結構がっつり変えてます。もっと変えていこう。