ビューはデフォルトでスタブ化されます
デフォルトでは、コントローラのスペックはアプリ内のビューではなく、空の文字列をレンダリングするテンプレートでビューをスタブ化します。これにより、テンプレートが正常にコンパイルされるかどうかに関係なく、アクションがどのビューテンプレートをレンダリングしようとするかを指定できます。
注意: rspec-rails-1.xとは異なり、実際のテンプレートが存在する必要があります。
コントローラのアクションによってレンダリングされるテンプレートを期待する(パスする)
以下の内容で「spec/controllers/widgets_controller_spec.rb」という名前のファイルが存在するとき:
require "rails_helper"
RSpec.describe WidgetsController, type: :controller do
describe "index" do
it "renders the index template" do
get :index
expect(response).to render_template("index")
expect(response.body).to eq ""
end
it "renders the widgets/index template" do
get :index
expect(response).to render_template("widgets/index")
expect(response.body).to eq ""
end
end
end