diff --git a/app/models/spending_proposal.rb b/app/models/spending_proposal.rb index 157b5f586..453eeaa2f 100644 --- a/app/models/spending_proposal.rb +++ b/app/models/spending_proposal.rb @@ -41,4 +41,26 @@ class SpendingProposal < ActiveRecord::Base def unresolved? resolution.blank? end + + def legality + case legal + when true + "legal" + when false + "no_legal" + else + "undefined" + end + end + + def feasibility + case feasible + when true + "feasible" + when false + "no_feasible" + else + "undefined" + end + end end diff --git a/spec/models/spending_proposal_spec.rb b/spec/models/spending_proposal_spec.rb index 25bccbfc6..03055e427 100644 --- a/spec/models/spending_proposal_spec.rb +++ b/spec/models/spending_proposal_spec.rb @@ -42,6 +42,42 @@ describe SpendingProposal do end end + describe "dossier info" do + describe "#legality" do + it "can be legal" do + spending_proposal.legal = true + expect(spending_proposal.legality).to eq "legal" + end + + it "can be no-legal" do + spending_proposal.legal = false + expect(spending_proposal.legality).to eq "no_legal" + end + + it "can be undefined" do + spending_proposal.legal = nil + expect(spending_proposal.legality).to eq "undefined" + end + end + + describe "#feasibility" do + it "can be feasible" do + spending_proposal.feasible = true + expect(spending_proposal.feasibility).to eq "feasible" + end + + it "can be no-feasible" do + spending_proposal.feasible = false + expect(spending_proposal.feasibility).to eq "no_feasible" + end + + it "can be undefined" do + spending_proposal.feasible = nil + expect(spending_proposal.feasibility).to eq "undefined" + end + end + end + describe "resolution status" do it "should be valid" do spending_proposal.resolution = "accepted"