Как протестировать со спецификацией с factory_girl в ruby - PullRequest
0 голосов
/ 29 февраля 2012

Я пытаюсь запустить мою спецификацию с factory_girl.Моё приложение / models / student_spec.rb выглядит следующим образом .., требуют 'spec_helper'

describe Student do
   it "should work" do
     Factory.create(:name => 'User2', :age => '22', :department => 'IT')
   end
end

Но выдает ошибку как

Failures:

  1) Student should work
     Failure/Error: Factory.create(:name => 'User2', :age => '22', :department =
> 'IT')
     NoMethodError:
       undefined method `to_sym' for {:name=>"User2", :age=>"22", :department=>"
IT"}:Hash
     # ./spec/models/student_spec.rb:7:in `block (2 levels) in <top (required)>'


Finished in 0.00073 seconds
1 example, 1 failure

spec / factories.rb, как указано, требуют 'factory_girl '

Factory.define :student do |s|
    s.name 'user2'
    s.age '22'
    s.department 'IT'
end

Я пытаюсь получить доступ к записи из базы данных, используя спецификацию. Либо создать / обновить, либо найти запись из базы данных. Но у меня это не работает.

1 Ответ

1 голос
/ 29 февраля 2012

Вам необходимо указать имя фабрики.

Factory.create(:student, :name => 'User2', :age => '22', :department => 'IT')

Хотя это не похоже на то, что вы переопределяете свои заводские настройки по умолчанию, за исключением заглавных букв 'user2'.

Вы можете просто использовать Factory(:student).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...