require 'rails_helper'

RSpec.describe Ppa::SubFuncao, type: :model do
	it{ is_expected.to belong_to :funcao }

	it{ is_expected.to have_many(:iniciativas).dependent(:restrict_with_exception) }

	it{ is_expected.to validate_presence_of :nome }
	it{ is_expected.to validate_presence_of :codigo }

	describe "valida unicidade" do
		before do
			sub_funcao = FactoryBot.create( :sub_funcao_ensino_fundamental )
			@nova_sub_funcao = FactoryBot.build( :sub_funcao_ensino_fundamental )
			@nova_sub_funcao.save
		end

		it "valida unicidade do codigo para um ppa_id" do
			expect( @nova_sub_funcao.errors[:codigo] ).to include "já está em uso"
		end

		it "valida unicidade do nome para um ppa_id" do
			expect( @nova_sub_funcao.errors[:nome] ).to include "já está em uso"
		end
	end
end