09/11/19 20:01:14
rspecでhave_textとかinclude_textが動かなくて困っています。
現象:
get "some_action_name"
response.should include_text("foo")
とすると
expected "foo", got "1"
と表示され、失敗します。
response.should render_template(...) は成功しています。
調べたこと:
自分で調べたところ、p response.body をすると "1" が出力されました。
これはテンプレートがレンダリングされてないのだと思い、テンプレートの中で
$stderr.puts "**** rendered *****"
みたいに入れると、出力されませんでした。
推測:
どうもgetを呼び出しただけだとテンプレートがレンダリングされない?
rspecのチュートリアルだと
URLリンク(rspec.info)
get 'some_action'
response.should have_text("expected text")
とあるので、getだけでいいと思うんですけど、ほかに何か必要でしょうか。