Подтвердить что ты не робот

Контролируемое неизвестное ключевое слово: id

У меня есть простое действие show

def show
  @field = Field.find_by(params[:id])
end

и я хочу написать spec для него

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

Как это исправить?

4b9b3361

Ответ 1

Методы 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