specs: create the procedure administrateur declaratively
It seems better to create associations in an declarative fashion, rather than using imperative code. This also makes the attribute compatible with build_stubbed.
This commit is contained in:
parent
970c3e4b2b
commit
032e3e2cb1
1 changed files with 2 additions and 6 deletions
|
@ -13,6 +13,8 @@ FactoryBot.define do
|
|||
lien_site_web { "https://mon-site.gouv" }
|
||||
path { SecureRandom.uuid }
|
||||
|
||||
administrateurs { administrateur.present? ? [administrateur] : [association(:administrateur)] }
|
||||
|
||||
transient do
|
||||
administrateur { }
|
||||
instructeurs { [] }
|
||||
|
@ -22,12 +24,6 @@ FactoryBot.define do
|
|||
end
|
||||
|
||||
after(:build) do |procedure, evaluator|
|
||||
if evaluator.administrateur
|
||||
procedure.administrateurs = [evaluator.administrateur]
|
||||
elsif procedure.administrateurs.empty?
|
||||
procedure.administrateurs = [build(:administrateur)]
|
||||
end
|
||||
|
||||
initial_revision = build(:procedure_revision, procedure: procedure)
|
||||
add_types_de_champs(evaluator.types_de_champ, to: initial_revision, scope: :public)
|
||||
add_types_de_champs(evaluator.types_de_champ_private, to: initial_revision, scope: :private)
|
||||
|
|
Loading…
Add table
Reference in a new issue