web-dev-qa-db-fra.com

Spéc. De contrôleur mot-clé inconnu: id

J'ai un spectacle d'action simple

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

et je veux écrire des spécifications pour cela

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

mais j'ai une erreur

Failure/Error: get :show, id: field

 ArgumentError:
   unknown keyword: id

Comment le réparer?

52
user

Les méthodes de requête HTTP accepteront uniquement les arguments de mot clé suivants params, headers, env, xhr, format

Selon la nouvelle API, vous devez utiliser des arguments de mots clés, params dans ce cas:

  it 'should show field' do
    get :show, params: { id: field.id }
    expect(response.status).to eq(200)
  end
145
Зелёный