require 'rails_helper' describe SpendingProposal do let(:spending_proposal) { build(:spending_proposal) } it "should be valid" do expect(spending_proposal).to be_valid end it "should not be valid without an author" do spending_proposal.author = nil expect(spending_proposal).to_not be_valid end describe "#title" do it "should not be valid without a title" do spending_proposal.title = nil expect(spending_proposal).to_not be_valid end it "should not be valid when very short" do spending_proposal.title = "abc" expect(spending_proposal).to_not be_valid end it "should not be valid when very long" do spending_proposal.title = "a" * 81 expect(spending_proposal).to_not be_valid end end describe "#description" do it "should be sanitized" do spending_proposal.description = "" spending_proposal.valid? expect(spending_proposal.description).to eq("alert('danger');") end it "should not be valid when very long" do spending_proposal.description = "a" * 6001 expect(spending_proposal).to_not be_valid end end end