Rails
rails4.1

Action Pack Variants がキター!けど rspec どうすんの

More than 3 years have passed since last update.

variant 用の view spec が書けないよー。


OK だった方法

render template: 'main.index.html+phone'

て書く。


ダメだったこと


describe 'main/index.html+smp'

rspec-rails の lib/rspec/rails/example/view_example_group.rb に describe のファイル名から render option を取得する処理があるのだけど variant 全く考慮されてない。

rspec-rails 2.99.0.beta2 と 3.0.0.beta2 で確認。

rails 4.1 対応!って書いてあったから入れてみたけど対応されてないっぽい。


request.variant = :phone

before(:each) に書いても request is nil


render variant: :phone

controller には書けるんだけど、なんか実装されてるレイヤーが違ってて rspec の render からは効かない。

(これが効かない為に lib/rspec/rails/example/view_example_group.rb への簡単な修正では済まないっぽくて本家に pullreq 送るまでの気力が出ない)