Thanks Driven Life

日々是感謝

TurnipFormatter & Gnawrnip 更新

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_rspecrspec プロセスを分けるので大丈夫のはず。test-queue も、もうちょっと調べてみないと)

あとは haml 飽きたので slim に直しました

gnawrnip

https://github.com/gongo/gnawrnip/releases/tag/v0.3.1

メインの修正はスクリーンショットを撮るタイミングの変更です。

これまでは Capybara::Session.NODE_METHOD と他いくつかメソッド実行前に呼ぶ、というものでしたが、has_button? とか title で呼ぶのかなり無駄だったので、アクション系操作に限定した、というものです。

あとは「エラー出た瞬間だけ撮る」「ステップ毎に撮る」「アクション毎に撮る」の3種類に増やそうかとも思いましたが、「ステップ毎に撮る」がまだモンキーパッチ祭りになりそうだったので一旦締め。思いついたらまた挑戦します

まとめ

これらの gem を更にモンキーパッチしている酔狂な人はいないと思ってるので結構がっつり変えてます。もっと変えていこう。