我发现了这个让我花了很长时间才找到的错误。
我有这个:
FactoryGirl.define do
factory :global_list do
list_id FactoryGirl.create(:user).liked_items_list.id
end
end
但只是包裹在一个块中:
FactoryGirl.define do
factory :global_list do
list_id { FactoryGirl.create(:user).liked_items_list.id }
end
end
所以我知道,在第二次调用中,该块导致它无法运行,直到发出像 FactoryGirl.create(:global_list) 这样的实际调用;我认为这是通过 FG 传递并转换为 proc 的。还有其他实际差异吗?我希望有一种方法可以以详细模式或其他方式运行它们。
thx 任何见解