O que são atributos transitórios factory_girl? Por que eu usaria um?
Eu liesta do Thoughtbot, mas ainda é confuso para mim.
Este é o exemplo deles:
factory :user do
transient do
rockstar true
upcased false
end
name { "John Doe#{" - Rockstar" if rockstar}" }
email { "#{name.downcase}@example.com" }
after(:create) do |user, evaluator|
user.name.upcase! if evaluator.upcased
end
end
create(:user, upcased: true).name
#=> "JOHN DOE - ROCKSTAR"
Assim,
É.upcased
um atributo real no modelo?O que étransient
bloco realmente fazendo? Definindo variáveis que podem ser usadas na fábrica?O que éevaluator
? Sempre precisa ser passado por último? E se o seucreate
função usa características, transitórios e possui vários valores?