FactoryBot.define do
	factory :programa_bolsa_familia, class: Loa::ProgramaDeGoverno do
		codigo {'2020'}
		nome {"Bolsa Familia"}
		status_do_orcamento {0}
		tipo_de_programa_id {
			Loa::TipoDePrograma.find_or_create_by!( FactoryBot.attributes_for :tipo_de_programa_tematico ).id
		}

		trait :orcamento_2016 do
			orcamento_id { Orcamento.first_or_create( FactoryBot.attributes_for :orcamento_2016 ).id }
		end

		trait :orcamento_2017 do
			orcamento_id {
				Orcamento.find_or_create_by!( FactoryBot.attributes_for :orcamento_2017 ).id
			}
		end
	end

	factory :minha_casa_minha_vida, class: Loa::ProgramaDeGoverno do
		codigo {"2020"}
		nome {"Minha Casa, Minha Vida"}
		status_do_orcamento {0}
		tipo_de_programa_id {
			Loa::TipoDePrograma.find_or_create_by!( FactoryBot.attributes_for :tipo_de_programa_tematico ).id
		}

		trait :orcamento_2016 do
			orcamento_id {
				Orcamento.find_or_create_by!( FactoryBot.attributes_for :orcamento_2016 ).id
			}
		end

		trait :orcamento_2017 do
			orcamento_id {
				Orcamento.find_or_create_by!( FactoryBot.attributes_for :orcamento_2017 ).id
			}
		end
	end

	factory :esporte_e_lazer, class: Loa::ProgramaDeGoverno do
		codigo {"0208"}
		nome {"Esporte e Lazer"}
		status_do_orcamento {0}
		tipo_de_programa_id {
			Loa::TipoDePrograma.find_or_create_by!( FactoryBot.attributes_for :tipo_de_programa_tematico ).id
		}

		trait :orcamento_2016 do
			orcamento_id {
				Orcamento.find_or_create_by!( FactoryBot.attributes_for :orcamento_2016 ).id
			}
		end

		trait :orcamento_2017 do
			orcamento_id {
				Orcamento.find_or_create_by!( FactoryBot.attributes_for :orcamento_2017 ).id
			}
		end
	end
end
