FactoryGirl——创建变量
FactoryGirl—creating variables
我有一个项目,工厂堆成这样:
FactoryGirl.define do
factory :terms_document do
created_by { FactoryGirl.create(:user) }
updated_by { FactoryGirl.create(:user) }
...
end
end
如何在一开始就创建一个我可以在整个工厂中使用的用户?
你可以在工厂文件中添加一个缓存方法:
def user
@user ||= FactoryGirl.create(:user)
end
FactoryGirl.define do
factory :terms_document do
created_by user
updated_by user
...
end
end
更新:如果您需要不同的用户用于不同的工厂实例:
def user(term_document)
@users ||= {}
@users[term_document] ||= FactoryGirl.create(:user)
end
FactoryGirl.define do
factory :terms_document do
...
after(:build) do |term_document|
created_by user(term_document)
updated_by user(term_document)
end
end
end
我有一个项目,工厂堆成这样:
FactoryGirl.define do
factory :terms_document do
created_by { FactoryGirl.create(:user) }
updated_by { FactoryGirl.create(:user) }
...
end
end
如何在一开始就创建一个我可以在整个工厂中使用的用户?
你可以在工厂文件中添加一个缓存方法:
def user
@user ||= FactoryGirl.create(:user)
end
FactoryGirl.define do
factory :terms_document do
created_by user
updated_by user
...
end
end
更新:如果您需要不同的用户用于不同的工厂实例:
def user(term_document)
@users ||= {}
@users[term_document] ||= FactoryGirl.create(:user)
end
FactoryGirl.define do
factory :terms_document do
...
after(:build) do |term_document|
created_by user(term_document)
updated_by user(term_document)
end
end
end