2015-09-18 3 views
0

Я пытаюсь смоделировать одну из моих спецификаций вида после приведенных примеров here.Использование назначений() в спецификациях вида rspec

С моей Gemfile: gem 'rspec-rails', '~> 3.0'

# /app/spec/views/teams/index.html.haml_spec.rb 
RSpec.describe "teams/index", type: :view do 

    before (:each) do 
    assigns(:teams, [ 
     FactoryGirl.create(:team, name: "Team 1"), 
     FactoryGirl.create(:team, name: "Team 2") 
    ]) 
    end 

    it "renders a list of teams" do 
    render 

    expect(rendered).to match /Team 1/ 
    expect(rendered).to match /Team 2/ 
    end 
end 

Эта спецификация терпит неудачу с:

1) teams/index renders a list of teams 
    Failure/Error: assigns(:teams, [ 
    ArgumentError: 
     wrong number of arguments (2 for 0..1) 

Я не понимаю, провал ... Я делаю именно то, что документы говорят мне делать , Что мне не хватает?

ответ

3

Вы должны использовать назначить вместо назначает:

before (:each) do 
    assign(:teams, [ 
    FactoryGirl.create(:team, name: "Team 1"), 
    FactoryGirl.create(:team, name: "Team 2") 
    ]) 
end 
Смежные вопросы