我为Rails4 app写了rspecs,并在工厂别名中面临问题
我有那家工厂:
factory :customer do
name { "Name-#{rand(9999)}#{rand(9999)}#{rand(9999)}#{rand(9999)}" }
billing_batch
company
end
end
factory :billing_batch do
batch { "Default-#{rand(9999)}#{rand(9999)}#{rand(9999)}#{rand(9999)}" }
company
end
如果我为特定公司创建客户
create(:customer, company: @company)
如果要创建billing_batch并将其分配给客户(该部分是正确的),还会创建一个额外的公司。
如何在客户工厂结算批次别名公司中指定?
答案 0 :(得分:0)
我会试试这个:
factory :customer do
name { "Name-#{rand(9999)}#{rand(9999)}#{rand(9999)}#{rand(9999)}" }
billing_batch
company { billing_batch.company || build(:company) }
end
end
我是afk并且无法测试,但是这样的事情应该有效。