シンプルなアクションショーがあります
def show
@field = Field.find_by(params[:id])
end
そして、私はそれのために仕様を書きたいです
require 'spec_helper'
RSpec.describe FieldsController, type: :controller do
let(:field) { create(:field) }
it 'should show field' do
get :show, id: field
expect(response.status).to eq(200)
end
end
しかし、私はエラーが発生しました
Failure/Error: get :show, id: field
ArgumentError:
unknown keyword: id
修正方法は?
HTTPリクエストメソッドは、次のキーワード引数のみを受け入れます
params, headers, env, xhr, format
新しいAPIによれば、この場合params
というキーワード引数を使用する必要があります。
it 'should show field' do
get :show, params: { id: field.id }
expect(response.status).to eq(200)
end