Как настроить factory_girl_rails с Rails 5.0.1

Я просто установил новый проект Rails с Rails 5.0.1

Я добавил factory_girl_rails в группу разработки и тестирования в Gemfile.

Затем я создал фабрику статей в папке spec / factory:

FactoryGirl.define do
  factory :article do
    title { Faker::Lorem.sentence }
    body { Faker::Lorem.paragraph }
  end
end

моя спецификация функции выглядит так:

require 'rails_helper'

feature "guest views articles" do

  let(:article1) { FactoryGirl.create(article) }
  let(:article2) { FactoryGirl.create(article) }

  scenario "by visiting index page" do
    visit articles_path
    expect(page).to have_content article1.title
    expect(page).to have_content article2.title
  end
end

Однако когда я запускаю спецификацию, я получаю следующее сообщение об ошибке:

Failures:                                                                                

  1) guest views articles by visiting index page                                         
     Failure/Error: let(:article1) { FactoryGirl.create(article) }                       

     NameError:                                                                          
       undefined local variable or method `article' for #    <RSpec::ExampleGroups::GuestViewsArticles:0x007fe957fad078>                                                              
   Did you mean?  article2                                                           
                  article1                                                           
   # ./spec/features/guest_views_articles_spec.rb:5:in `block (2 levels) in <top (required)>'                                                                                   
   # ./spec/features/guest_views_articles_spec.rb:10:in `block (2  levels) in <top (required)>'

из сообщения об ошибке кажется, что фабрика товаров не определена или не распознана. Я что-то забыл при настройке фабрики изделий?

мой репозиторий находится по адресу:

https://github.com/acandael/personalsite/tree/first_test

Спасибо за вашу помощь,

Энтони


person Toontje    schedule 07.01.2017    source источник


Ответы (1)


нашел проблему:

let(:article1) { FactoryGirl.create(article) }

должно быть

let(:article1) { FactoryGirl.create(:article) }
person Toontje    schedule 07.01.2017