shared_examples "receita" do

	[:origem, :especie, :rubrica].each do |atributo|
		it { is_expected.to validate_length_of(atributo).is_equal_to(1) }
	end

	# it "não permite alterações no atributo projecao_de_receita_id" do
	# 	nova_receita_corrente.save
	# 	nova_receita_corrente.padrao = true
	# 	nova_receita_corrente.validate
	# 	expect( nova_receita_corrente.errors[:padrao] ).to include "não pode ser alterado"
	# end

	describe ".analiticas" do
		it "retorna as naturezas analiticas" do
			nova_receita_corrente.save
			expect(Base::NaturezaDaReceita.all.analiticas).to include(nova_receita_corrente)
		end
	end

	describe ".completar_codigo_com_zeros" do
		context "quando utiliza antigo tipo de codigo" do
			it "retorna codigo completo da natureza com codigo zeros a direita" do
				expect( described_class.completar_codigo_com_zeros('24210999', false) ).to eq('2421099900')
			end
		end

		context "quando utiliza novo tipo de codigo" do
			it "retorna codigo completo da natureza com codigo zeros a direita" do
				expect( described_class.completar_codigo_com_zeros('9211099', true) ).to eq('9211099000000000')
			end
		end
	end

	describe '.classificacao_por_codigo' do
		it 'retorna a classificação detalhada a partir de um código de receita' do
			expect( described_class.classificacao_por_codigo('0071111111110000', true) ).to eq({
				categoria_economica: '007',
				origem: '1',
				especie: '1',
				rubrica: '1',
				alinea: '11',
				subalinea: '1',
				detalhamento_optativo: '1',
				nivel_opcional_1: '11',
				nivel_opcional_2: '00',
				nivel_opcional_3: '00'
				})
		end
	end

	describe '.classificacao_com_niveis_utilizados_por_codigo' do
		it 'retorna a classificação utilizada a partir de um código de receita' do
			expect( described_class.classificacao_com_niveis_utilizados_por_codigo('0071111111110000', true) ).to eq({
				categoria_economica: '007',
				origem: '1',
				especie: '1',
				rubrica: '1',
				alinea: '11',
				subalinea: '1',
				detalhamento_optativo: '1',
				nivel_opcional_1: '11'
				})
		end
	end

	describe ".codigo_formatado" do
		context "antiga classificação da receita" do
			it "retorna o codigo formatado com as pontuacoes" do
				expect(described_class.codigo_formatado('9235109900') ).to eq "9.2.3.5.10.99.00"
			end
		end

		context "nova classificação da receita" do
			it "retorna o codigo formatado com as pontuações" do
				expect(described_class.codigo_formatado('0071110111500000') ).to eq "007.1.1.1.01.1.1.50.00.00"
			end
		end
	end

	describe ".codigo_da_nova_receita_intra_orcamentaria" do
		context "quando receita for de corrente" do
			it "retorna 7" do
				expect(described_class.codigo_da_nova_receita_intra_orcamentaria('0010000000000000')).to eq '7'
			end
		end

		context "quando receita for de capital" do
			it "retorna 8" do
				expect(described_class.codigo_da_nova_receita_intra_orcamentaria('0020000000000000')).to eq '8'
			end
		end
	end

	describe "#descricao_e_sigla" do
		context "quando receita não tem sigla" do
			it "retorna texto com descricao" do
				expect( nova_receita_corrente.descricao_e_sigla ).to eq 'Nova Receita Corrente'
			end
		end

		context "quando receita tem sigla" do
			it "retorna texto com sigla e descricao" do
				nova_receita_corrente.sigla = 'SAU'
				expect( nova_receita_corrente.descricao_e_sigla ).to eq 'Nova Receita Corrente (SAU)'
			end
		end
	end

	describe "#codigo_e_descricao" do
		it "retorna 'XXXXXXXXXX' - 'DESCRIÇÃO', onde XXXXXXXXXX é o código e a DESCRIÇÃO é a descrição da natureza da receita" do
			expect(receita_corrente.codigo_e_descricao).to eq "0011110111500000 - Nova Receita Corrente"
		end
	end

	describe "#codigo_formatado_e_descricao" do
		it "retorna 'X.X.X.X.XX.XX.XX' - 'DESCRIÇÃO', onde X.X.X.X.XX.XX.XX é o código e a DESCRIÇÃO é a descrição da natureza da receita" do
			expect(receita_corrente.codigo_formatado_e_descricao).to eq "001.1.1.1.01.1.1.50.00.00 - Nova Receita Corrente"
		end
	end

	describe '#filhos' do
		it 'retorna os filhos de uma receita' do
			nova_receita_corrente_pai.save!
			nova_receita_corrente.save!
			expect(nova_receita_corrente_pai.filhos).to include(nova_receita_corrente)
		end
	end

	describe "#pode_ser_orcada?" do
		describe "para nova classificacao" do
			context "quando detalhamento_optativo for diferente de zero" do
				it "retorna verdadeiro" do
					expect( nova_receita_corrente.pode_ser_orcada? ).to be_truthy
				end
			end

			context "quando detalhamento_optativo for igual a zero" do
				it "retorna falso" do
					expect( nova_receita_corrente_com_tipo_zero.pode_ser_orcada? ).to be_falsey
				end
			end
		end

		describe "para classificacao antiga" do
			context "quando receita for analítica" do
				it "retorna verdadeiro" do
					expect( receita_corrente.pode_ser_orcada? ).to be_truthy
				end
			end

			context "quando receita não for analítica" do
				it "retorna falso" do
					receita_corrente_pai.save
					receita_corrente.save
					receita_corrente_pai.reload
					expect( receita_corrente_pai.pode_ser_orcada? ).to be_falsey
				end
			end
		end
	end

	describe "#pode_ser_excluida?" do
		it "retorna true" do
			natureza_da_receita_pai = FactoryBot.build(:nova_natureza_receita_corrente_pai)
			natureza_da_receita_pai.codigo = '0011110111000000'
			natureza_da_receita_pai.padrao = true
			natureza_da_receita_pai.save

			natureza_da_receita = FactoryBot.build(:nova_natureza_receita_corrente)
			natureza_da_receita.codigo = '0011110111500000'
			natureza_da_receita.padrao = false
			natureza_da_receita.save

			expect( natureza_da_receita.pode_ser_excluida? ).to be_truthy
		end

		context "quando natureza tem filho" do
			it "retorna false" do
				natureza_da_receita_pai = FactoryBot.build(:nova_natureza_receita_corrente_pai)
				natureza_da_receita_pai.codigo = '0011110111000000'
				natureza_da_receita_pai.padrao = true
				natureza_da_receita_pai.save

				natureza_da_receita = FactoryBot.build(:nova_natureza_receita_corrente)
				natureza_da_receita.codigo = '0011110111500000'
				natureza_da_receita.padrao = false
				natureza_da_receita.save

				expect( natureza_da_receita_pai.pode_ser_excluida? ).to be_falsey
			end
		end
	end

	describe '#pode_ser_configurada?' do
		context 'quando atende aos requisitos' do
			it 'retorna true' do
				nova_receita_corrente_pai.codigo = "0011111111000000"
				nova_receita_corrente_pai.save!
				expect(nova_receita_corrente_pai.pode_ser_configurada?).to be_truthy
			end
		end

		context 'quando não atende ao requisito' do
			context 'de tipo de dedução' do
				it 'retorna false' do
					nova_receita_corrente_pai.codigo = "9911111110000000"
					nova_receita_corrente_pai.save!
					expect(nova_receita_corrente_pai.pode_ser_configurada?).to be_falsey
				end
			end

			context 'de ser novo tipo' do
				it 'retorna false' do
					receita_corrente.save!
					expect(receita_corrente.pode_ser_configurada?).to be_falsey
				end
			end

			context 'de não poder ser intra-orçamentária' do
				it 'retorna false' do
					nova_receita_corrente_pai.codigo = "0071111110000000"
					nova_receita_corrente_pai.save!
					expect(nova_receita_corrente_pai.pode_ser_configurada?).to be_falsey
				end
			end

			context 'de não poder ser nível opcional' do
				it 'retorna false' do
					nova_receita_corrente_pai.codigo = "0071111111110000"
					nova_receita_corrente_pai.save!
					expect(nova_receita_corrente_pai.pode_ser_configurada?).to be_falsey
				end
			end
		end
	end

	describe '#receita_orcamentaria?' do
		context 'quando é novo tipo' do
			context 'e a categoria economica é 1' do
				it 'retorna true' do
					nova_receita_corrente.codigo = "0011111111110000"
					expect(nova_receita_corrente.receita_orcamentaria?).to be_truthy
				end
			end
			context 'e a categoria economica é 2' do
				it 'retorna true' do
					nova_receita_corrente.codigo = "0021111111110000"
					expect(nova_receita_corrente.receita_orcamentaria?).to be_truthy
				end
			end
			context 'e a categoria economica é 7' do
				it 'retorna false' do
					nova_receita_corrente.codigo = "0071111111110000"
					expect(nova_receita_corrente.receita_orcamentaria?).to be_falsey
				end
			end
			context 'e a categoria economica é 8' do
				it 'retorna false' do
					nova_receita_corrente.codigo = "0081111111110000"
					expect(nova_receita_corrente.receita_orcamentaria?).to be_falsey
				end
			end
			context 'e a categoria economica é 9' do
				it 'retorna false' do
					nova_receita_corrente.codigo = "9111111111110000"
					expect(nova_receita_corrente.receita_orcamentaria?).to be_falsey
				end
			end
		end
		context 'quando é do tipo antigo' do
			context 'e a categoria economica é 1' do
				it 'retorna true' do
					receita_corrente_antiga.codigo = "1235109900"
					receita_corrente_antiga.validate
					expect(receita_corrente_antiga.receita_orcamentaria?(novo_tipo: false)).to be_truthy
				end
			end
			context 'e a categoria economica é 2' do
				it 'retorna true' do
					receita_corrente_antiga.codigo = "2235109900"
					receita_corrente_antiga.validate
					expect(receita_corrente_antiga.receita_orcamentaria?(novo_tipo: false)).to be_truthy
				end
			end
			context 'e a categoria economica é 7' do
				it 'retorna false' do
					receita_corrente_antiga.codigo = "7235109900"
					receita_corrente_antiga.validate
					receita_corrente_antiga.novo_tipo = false
					receita_corrente_antiga.save(validate: false)
					expect(receita_corrente_antiga.receita_orcamentaria?(novo_tipo: false)).to be_falsey
				end
			end
			context 'e a categoria economica é 8' do
				it 'retorna false' do
					receita_corrente_antiga.codigo = "8235109900"
					receita_corrente_antiga.validate
					receita_corrente_antiga.novo_tipo = false
					receita_corrente_antiga.save(validate: false)
					expect(receita_corrente_antiga.receita_orcamentaria?(novo_tipo: false)).to be_falsey
				end
			end
			context 'e a categoria economica é 9' do
				it 'retorna false' do
					receita_corrente_antiga.codigo = "9235109900"
					receita_corrente_antiga.validate
					receita_corrente_antiga.novo_tipo = false
					receita_corrente_antiga.save(validate: false)
					expect(receita_corrente_antiga.receita_orcamentaria?(novo_tipo: false)).to be_falsey
				end
			end
		end
	end

	describe '#classificacao' do
		it 'retorna a classificação de uma natureza da receita' do
			nova_receita_corrente_pai.codigo = "0071111111110000"
			expect(nova_receita_corrente_pai.classificacao).to eq({
				categoria_economica: '007',
				origem: '1',
				especie: '1',
				rubrica: '1',
				alinea: '11',
				subalinea: '1',
				detalhamento_optativo: '1',
				nivel_opcional_1: '11',
				nivel_opcional_2: '00',
				nivel_opcional_3: '00'
				})
		end
	end

	describe "#classificacao_com_niveis_utilizados" do
		context "receita de classificação antiga" do
			it "retorna hash com os níveis utilizados" do
				expect( receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:categoria_economica)
				expect( receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:origem)
				expect( receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:especie)
				expect( receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:rubrica)
				expect( receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:alinea)
				expect( receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:subalinea)
				expect( receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:detalhamento_optativo)
			end
		end

		context "receita de classificação nova" do
			it "retorna hash com os níveis utilizados" do
				expect( nova_receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:detalhamento_optativo)
				expect( nova_receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:categoria_economica)
				expect( nova_receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:origem)
				expect( nova_receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:especie)
				expect( nova_receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:rubrica)
				expect( nova_receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:alinea)
				expect( nova_receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:subalinea)
				expect( nova_receita_corrente.classificacao_com_niveis_utilizados ).to have_key(:nivel_opcional_1)
				expect( nova_receita_corrente.classificacao_com_niveis_utilizados ).not_to have_key(:nivel_opcional_2)
				expect( nova_receita_corrente.classificacao_com_niveis_utilizados ).not_to have_key(:nivel_opcional_3)
			end
		end
	end

	describe "#classificacao_com_niveis_nao_utilizados" do
		context "receita de classificação antiga" do
			it "retorna hash com os níveis não utilizados" do
				expect( receita_corrente_antiga.classificacao_com_niveis_nao_utilizados ).to have_key(:detalhamento_optativo)
				expect( receita_corrente_antiga.classificacao_com_niveis_nao_utilizados ).not_to have_key(:categoria_economica)
				expect( receita_corrente_antiga.classificacao_com_niveis_nao_utilizados ).not_to have_key(:origem)
				expect( receita_corrente_antiga.classificacao_com_niveis_nao_utilizados ).not_to have_key(:especie)
				expect( receita_corrente_antiga.classificacao_com_niveis_nao_utilizados ).not_to have_key(:rubrica)
				expect( receita_corrente_antiga.classificacao_com_niveis_nao_utilizados ).not_to have_key(:alinea)
				expect( receita_corrente_antiga.classificacao_com_niveis_nao_utilizados ).not_to have_key(:subalinea)
			end
		end

		context "receita de classificação nova" do
			it "retorna hash com os níveis não utilizados" do
				expect( nova_receita_corrente.classificacao_com_niveis_nao_utilizados ).not_to have_key(:detalhamento_optativo)
				expect( nova_receita_corrente.classificacao_com_niveis_nao_utilizados ).not_to have_key(:categoria_economica)
				expect( nova_receita_corrente.classificacao_com_niveis_nao_utilizados ).not_to have_key(:origem)
				expect( nova_receita_corrente.classificacao_com_niveis_nao_utilizados ).not_to have_key(:especie)
				expect( nova_receita_corrente.classificacao_com_niveis_nao_utilizados ).not_to have_key(:rubrica)
				expect( nova_receita_corrente.classificacao_com_niveis_nao_utilizados ).not_to have_key(:alinea)
				expect( nova_receita_corrente.classificacao_com_niveis_nao_utilizados ).not_to have_key(:subalinea)
				expect( nova_receita_corrente.classificacao_com_niveis_nao_utilizados ).not_to have_key(:nivel_opcional_1)
				expect( nova_receita_corrente.classificacao_com_niveis_nao_utilizados ).to have_key(:nivel_opcional_2)
				expect( nova_receita_corrente.classificacao_com_niveis_nao_utilizados ).to have_key(:nivel_opcional_3)
			end
		end
	end

	describe "#classificacao_com_niveis_utilizados_e_obrigatorios_em_string" do
		context "exibe a classificação de niveis da receita" do
			it 'retorna um array' do
				receita_corrente_pai.save
				expect(receita_corrente_pai.classificacao_com_niveis_utilizados_e_obrigatorios_em_string).to include "#{receita_corrente_pai.categoria_economica}."+"#{receita_corrente_pai.origem}."+"#{receita_corrente_pai.especie}."+"#{receita_corrente_pai.rubrica}."+"#{receita_corrente_pai.alinea}"
			end
		end
	end

	describe "#codigo_deve_estar_com_os_atributos_de_niveis_de_classificacao" do
		context "quando codigo é igual aos itens da classificação da natureza_da_receita" do
			it "retorna true" do
				receita_corrente.save
				expect(receita_corrente.persisted?).to be(true)
			end
		end

		context "quando codigo é diferente aos itens da classificação da natureza_da_receita" do
			it "retorna mensagem de erro" do
				receita_corrente.codigo = "923510990060000000"
				receita_corrente.validate
				expect( receita_corrente.errors[:codigo] ).to include "código não está correspondendo aos niveis de classificacao da receita indicado"
			end
		end
	end

	describe "#valida_analitica?" do
		context "quando codigo passado é de nivel mais baixo" do
			it "retorna true" do
				nova_receita_corrente.save
				expect(nova_receita_corrente.valida_analitica?).to be(true)
			end
		end

		context "quando codigo passado não é de nivel mais baixo" do
			it "retorna false" do
				receita_corrente_pai.save
				receita_corrente.save
				expect(receita_corrente_pai.valida_analitica?).to be(false)
			end
		end
	end

	describe "#codigo_da_classificacao" do
		it "retorna codigo especifico da classificacao correspondente" do
			expect(nova_receita_corrente.codigo_da_classificacao).to eq('50')
		end
	end

	describe '#receita_opcional?' do
		context 'quando é receita opcional' do
			it 'retorna true' do
				nova_receita_corrente.codigo = "0011111111110000"
				nova_receita_corrente.save!
				expect(nova_receita_corrente.receita_opcional?).to be_truthy
			end
		end

		context 'quando não é receita opcional' do
			it 'retorna false' do
				nova_receita_corrente.codigo = "0011111111000000"
				nova_receita_corrente.save!
				expect(nova_receita_corrente.receita_opcional?).to be_falsey
			end
		end
	end

	describe "#categoria" do
		context "quando for novo tipo de receita" do
			it "retorna codigo da categoria economica" do
				expect(nova_receita_intra.categoria).to eq('7')
			end
		end

		context "quando não for novo tipo de receita" do
			it "retorna codigo da categoria economica" do
				expect(receita_intra.categoria).to eq('7')
			end
		end
	end

	describe "#intra_orcamentaria?" do
		context "quando for intra_orcamentaria" do
			it "retorna true" do
				expect(nova_receita_intra.intra_orcamentaria?).to be_truthy
			end
		end

		context "quando não for intra_orcamentaria" do
			it "retorna false" do
				expect(nova_receita_corrente.intra_orcamentaria?).to be_falsey
			end
		end
	end

	describe "#niveis_devem_ser_todos_maiores_ou_igual_a_zero" do
		# context "quando todos os niveis são maiores ou iguais a zero" do
		# 	it "retorna true" do
		# 		nova_receita_corrente.save
		# 		expect(nova_receita_corrente.persisted?).to be_falsey
		# 	end
		# end

		context "quando há algum nivel nulo" do
			it "retorna mensagem de erro" do
				receita_corrente.codigo = '00111111'

				receita_corrente.validate
				expect( receita_corrente.errors[:codigo] ).to include "código deverá ser um número inteiro positivo"
			end
		end
	end

	describe "#nivel_pai" do
		context "em uma natureza da receita" do
			it "retorna natureza da receita de um nivel acima" do
				receita_corrente_pai.save!
				receita_corrente.save!
				expect(receita_corrente.nivel_pai).to eq(receita_corrente_pai)
			end
		end
	end

	describe '#muda_atributo_analitica_do_pai' do
		describe 'ao criar uma nova receita' do
			context 'se o pai for analítico' do
				it 'muda o atributo "analitica" do pai' do
					receita_corrente_pai.save!
					expect(receita_corrente_pai.analitica?).to be_truthy
					receita_corrente.save!
					receita_corrente_pai.reload
					expect(receita_corrente.analitica?).to be_truthy
					expect(receita_corrente_pai.analitica?).to be_falsey
				end
			end

			context 'se o pai não for analítico' do
				it 'não muda o atributo "analitica" do pai' do
					receita_corrente_pai.analitica = false
					receita_corrente_pai.save!
					expect(receita_corrente_pai.analitica?).to be_falsey
					receita_corrente.save!
					receita_corrente_pai.reload
					expect(receita_corrente.analitica?).to be_truthy
					expect(receita_corrente_pai.analitica?).to be_falsey
				end
			end
		end

		describe 'ao apagar uma receita' do
			context 'se o pai não for analítico' do
				it 'atribui "false" ao campo analítica do pai' do
					nova_receita_corrente_pai.save!
					nova_receita_corrente.save!
					receita_2 = nova_receita_corrente.dup
					receita_2.save(validate: false)

					nova_receita_corrente_pai.reload
					expect(nova_receita_corrente.analitica?).to be_truthy
					expect(receita_2.analitica?).to be_truthy
					expect(nova_receita_corrente_pai.analitica?).to be_falsey

					nova_receita_corrente.destroy
					nova_receita_corrente_pai.reload
					expect(nova_receita_corrente_pai.analitica?).to be_falsey
				end
			end
		end
	end

	describe ".classificacao" do
		context "quando classificação da receita é do modelo antigo" do
			it 'retorna hash de classificação da receita' do
				receita_corrente.save
				resultado = {
					categoria_economica: receita_corrente.categoria_economica,
					origem: receita_corrente.origem,
					especie: receita_corrente.especie,
					rubrica: receita_corrente.rubrica,
					alinea: receita_corrente.alinea,
					subalinea: receita_corrente.subalinea,
					detalhamento_optativo: receita_corrente.detalhamento_optativo
				}
				expect(receita_corrente.classificacao).to include resultado
			end
		end

		context "quando classificação da receita é do modelo novo" do
			it 'retorna hash de classificação da receita' do
				nova_receita_corrente.save
				resultado = {
					categoria_economica: nova_receita_corrente.categoria_economica,
					origem: nova_receita_corrente.origem,
					especie: nova_receita_corrente.especie,
					rubrica: nova_receita_corrente.rubrica,
					alinea: nova_receita_corrente.alinea,
					subalinea: nova_receita_corrente.subalinea,
					detalhamento_optativo: nova_receita_corrente.detalhamento_optativo,
					nivel_opcional_1: nova_receita_corrente.nivel_opcional_1,
					nivel_opcional_2: nova_receita_corrente.nivel_opcional_2,
					nivel_opcional_3: nova_receita_corrente.nivel_opcional_3
				}

				expect(nova_receita_corrente.classificacao).to include resultado
			end
		end
	end

	describe "#detalhar_classificacao" do
		it "retorna codigo e descricao de todas as classificacoes pai" do
			receita = nova_receita_corrente_com_niveis_acima
			detalhe_da_receita = receita.detalhar_classificacao

			expect(detalhe_da_receita[0]).to include({codigo: '001.0.0.0.00.0.0.00.00.00', descricao: 'Nova Receita Corrente', posicao_de_destaque: 0})
			expect(detalhe_da_receita[1]).to include({codigo: '001.1.0.0.00.0.0.00.00.00', descricao: 'Nova Receita Corrente', posicao_de_destaque: 1})
			expect(detalhe_da_receita[2]).to include({codigo: '001.1.1.0.00.0.0.00.00.00', descricao: 'Nova Receita Corrente', posicao_de_destaque: 2})
			expect(detalhe_da_receita[3]).to include({codigo: '001.1.1.1.00.0.0.00.00.00', descricao: 'Nova Receita Corrente', posicao_de_destaque: 3})
			expect(detalhe_da_receita[4]).to include({codigo: '001.1.1.1.01.0.0.00.00.00', descricao: 'Nova Receita Corrente', posicao_de_destaque: 4})
			expect(detalhe_da_receita[5]).to include({codigo: '001.1.1.1.01.1.0.00.00.00', descricao: 'Nova Receita Corrente', posicao_de_destaque: 5})
			expect(detalhe_da_receita[6]).to include({codigo: '001.1.1.1.01.1.1.00.00.00', descricao: 'Nova Receita Corrente', posicao_de_destaque: 6})
			expect(detalhe_da_receita[7]).to include({codigo: '001.1.1.1.01.1.1.50.00.00', descricao: 'Nova Receita Corrente', posicao_de_destaque: 7})
			expect(detalhe_da_receita[8]).to be_nil
		end
	end

	describe "#impede_delecao_para_nivel_tipo_zero" do
		context "quando natureza da receita tiver valor previsto maior que zero" do
			it "retorna mensagem de erro" do
				nova_receita_corrente.save
				nova_receita_corrente_pai.save

				expect { nova_receita_corrente_pai.destroy }.to raise_error('não é possível remover natureza da receita com filho(s)')
			end
		end
	end
end
