私の工場は次のようになります。
Factory.define :coupon do |c|
c.title { Forgery(:lorem_ipsum).sentences(3, :random => true) }
end
そして、Rspec からの呼び出しは次のようになります。
coupons = []
5.times {|i| coupons << Factory(:coupon, :starts_at => i.days.ago) }
私の Coupon モデルでは、タイトルが一意である必要があるという検証があります。このテストを実行できる唯一の方法は、工場でこれを行うことです。
Factory.define :coupon do |c|
c.title {|i| Forgery(:lorem_ipsum).sentences(3, :random => true) + "#{i}" }
end
確かにもっと良い方法があるはずですか?