FactoryBot.define do
	factory :ppa_iniciativa_para_ensino_fundamental, class: 'Ppa::Iniciativa' do
		objetivo_id {
			Ppa::Objetivo.find_by(codigo: "001").try(:id) ||
			FactoryBot.create(:ppa_objetivo).id
		}
		funcao_id {
			Ppa::Funcao.find_by( nome: 'Educação' ).try(:id) ||
			FactoryBot.create( :funcao_educacao, :ppa_2014 ).id
		}
		sub_funcao_id {
			Ppa::SubFuncao.find_by(nome: "Ensino Fundamental").try(:id) ||
			FactoryBot.create(:sub_funcao_ensino_fundamental).id
		}
		natureza_da_iniciativa_id {
			Ppa::NaturezaDaIniciativa.find_by(descricao: "Operações Especiais").try(:id) ||
			FactoryBot.create(:operacoes_especiais).id
		}

		unidade_orcamentaria_id {
			Ppa::UnidadeOrcamentaria.find_by( nome: 'Administração' ).try(:id) ||
			FactoryBot.create(:unidade_orcamentaria_administracao).id
		}

		descricao {"Contratar profissionais no interior do estado"}
		codigo {"001"}
	end

	factory :ppa_iniciativa_com_proposta, class: 'Ppa::Iniciativa' do
		objetivo_id {
			Ppa::Objetivo.find_by(codigo: "001").try(:id) ||
			FactoryBot.create(:ppa_objetivo).id
		}
		funcao_id {
			Ppa::Funcao.find_by( nome: 'Educação' ).try(:id) ||
			FactoryBot.create( :funcao_educacao, :ppa_2014 ).id
		}
		sub_funcao_id {
			Ppa::SubFuncao.find_by(nome: "Ensino Fundamental").try(:id) ||
			FactoryBot.create(:sub_funcao_ensino_fundamental).id
		}
		natureza_da_iniciativa_id {
			Ppa::NaturezaDaIniciativa.find_by(descricao: "Operações Especiais").try(:id) ||
			FactoryBot.create(:operacoes_especiais).id
		}

		unidade_orcamentaria_id {
			Ppa::UnidadeOrcamentaria.find_by( nome: 'Administração' ).try(:id) ||
			FactoryBot.create(:unidade_orcamentaria_administracao).id
		}

		proposta_id {
			Ppa::Proposta.find_by(descricao: 'Proposta Teste...').try(:id) ||
			FactoryBot.create( :ppa_proposta ).id
		}

		descricao {"Comprar materiais para escolas publicas"}
		codigo {"002"}
	end
end
