Gosto de usar um sistema de fábricas dinâmico , por isso estou usando o Faker .
FactoryGirl.define do
factory :event do
left_content Faker::Lorem.sentence
right_content Faker::Lorem.sentence
trait :small do
size 'small'
end
trait :medium do
size 'medium'
end
trait :large do
size 'large'
end
end
end
Embora isso possa ser bom, a saída pode ser indesejada. Ambos left_content
e right_content
serão o mesmo.
O Faker produzirá conteúdo duplicado. Isso é muito ruim quando você tem uniqueness
validadores no lugar.
O mesmo vale para vários modelos, aninhamento e assim por diante.
A solução para dados duplicados é muito simples:
FactoryGirl.define do
factory :event do
left_content { Faker::Lorem.sentence }
right_content { Faker::Lorem.sentence }
trait :small do
size 'small'
end
trait :medium do
size 'medium'
end
trait :large do
size 'large'
end
end
end
Apenas replique os valores estáticos com blocos e você estará certo.
Saúde,
C