Получение ‹LoadError: нет такого файла для загрузки factory_girl› с Rails 3 и factory_girl_rails

Я знаю, что упускаю что-то фундаментальное, но я в растерянности. Посмотрев на сайт factory_girl, я установил гем factory_girl_rails в Gemfile:

group :development, :test do
    gem 'webrat'
    gem 'rspec'
    gem 'rspec-rails'
    gem 'factory_girl_rails'
    gem 'annotate-models', '1.0.4'
    gem 'spork', '0.8.4'
end

Когда я запускаю «bundle install», я вижу, что устанавливаются как гем factory_girl_rails, так и гем зависимого-Upon factory_girl.

Однако после создания моего заводского файла и помещения его в каталог spec/support:

require 'factory_girl'

Factory.define :user do |u|
    user.name                   "Example User"
    user.email                  "[email protected]"
    user.password               "foobar"
    user.password_confirmation  "foobar"
end

когда я запускаю rspec, я получаю сообщение LoadError: нет такого файла для загрузки -- factory_girl

Что я делаю неправильно?

Спасибо!


person Kris Robison    schedule 13.11.2010    source источник
comment
Вы уверены, что оператор require... э... обязателен?   -  person zetetic    schedule 14.11.2010
comment
Я поместил его туда, потому что получал неинициализированные константы Factory. Но вы правы, что это не обязательно. Глядя на код factory_girl_rails, они настраивают порядок загрузки на основе заводов, которые больше не находятся в каталоге поддержки. Поэтому я переместил его и наконец избавился от этой ошибки. Затем мне потребовалось еще много времени, чтобы заметить, что мое заводское определение использует «пользователь» внутри блока вместо «u». ~вздох~   -  person Kris Robison    schedule 14.11.2010


Ответы (1)


Вы пробовали ставить

require 'factory_girl'

в вашем файле "spec/spec_helper.rb"? Вот куда это должно идти, в общем.

person GreenPlastik    schedule 09.12.2010