私はすでにこことここを見てきました。正常にロードしてfactory_girl_rails
います。
構文エラーに違いないと思いましたが、1時間頭をかいた後、実際には修正できませんでした。誰か助けてもらえますか?:)
これが私の工場です:
require 'Faker'
FactoryGirl.define do
factory :user do
name { Faker::Name.name }
email { Faker::Internet.email }
password { Faker::Lorem.characters 12 }
end
trait :with_teams do
ignore do
number_of_teams 5
end
after :create do |user, evaluator|
FactoryGirl.create_list :team, evaluator.number_of_teams, :user => user
end
end
end
そして、ここに関連する仕様があります:
require 'spec_helper'
describe User do
# This works fine
it "can create a team" do
user = FactoryGirl.create :user
team = user.teams.create
team.class.should == Team
end
# The marked line throws argument error
it "can have many teams" do
user = FactoryGirl.create :user, :with_teams, :number_of_teams => 10 # <---
user.teams.length.should == 10
end
end
そして、これは私がスペックを実行することから得ているエラーです:
Failures:
1) User can have many teams
Failure/Error: user = FactoryGirl.create :user, :with_teams, :number_of_teams => 10
ArgumentError:
Factory not registered: User
# ./spec/factories/users.rb:19:in `block (3 levels) in <top (required)>'
# ./spec/models/user_spec.rb:34:in `block (2 levels) in <top (required)>'