FactoryBot.define do
	factory :meta_contratar_profissionais, class: 'Ppa::Meta' do
		descricao {"Contratar 50 profissionais em 2 anos"}

		objetivo_id {
			Ppa::Objetivo.find_by(codigo: "001").try(:id) ||
			FactoryBot.create(:ppa_objetivo).id
		}

		after(:create) do |meta|
			ppa = meta.objetivo.orgao.ppa
			unidade_de_medida = UnidadeDeMedida.find_or_create_by!( FactoryBot.attributes_for(:unidade_de_medida) )
			(ppa.exercicio_inicial..ppa.exercicio_final).each do |exercicio|
				meta.quantitativos.build(exercicio: exercicio, indice_de_referencia: 0, unidade_de_medida: unidade_de_medida)
			end
		end
	end

	factory :meta_contratar_profissionais_para_ppa_atual, class: 'Ppa::Meta' do

		descricao {"Contratar 50 profissionais em 2 anos"}

		objetivo_id {
			Ppa::Objetivo.find_by(codigo: "002").try(:id) ||
			FactoryBot.create(:ppa_objetivo_ppa_atual).id
		}

		after(:create) do |meta|
			ppa = meta.objetivo.orgao.ppa
			(ppa.exercicio_inicial..ppa.exercicio_final).each do |exercicio|
				meta.quantitativos.build(exercicio: exercicio, indice_de_referencia: 0)
			end
		end
	end
end
