Add Budget#valuating_or_later? method
We're going to use it so we know if a budget has finished its support phase.
This commit is contained in:
@@ -125,6 +125,10 @@ class Budget < ApplicationRecord
|
|||||||
Budget::Phase::PUBLISHED_PRICES_PHASES.include?(phase)
|
Budget::Phase::PUBLISHED_PRICES_PHASES.include?(phase)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def valuating_or_later?
|
||||||
|
current_phase&.valuating_or_later?
|
||||||
|
end
|
||||||
|
|
||||||
def publishing_prices_or_later?
|
def publishing_prices_or_later?
|
||||||
current_phase&.publishing_prices_or_later?
|
current_phase&.publishing_prices_or_later?
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -47,6 +47,10 @@ class Budget
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def valuating_or_later?
|
||||||
|
in_phase_or_later?("valuating")
|
||||||
|
end
|
||||||
|
|
||||||
def publishing_prices_or_later?
|
def publishing_prices_or_later?
|
||||||
in_phase_or_later?("publishing_prices")
|
in_phase_or_later?("publishing_prices")
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -97,6 +97,23 @@ describe Budget do
|
|||||||
expect(budget).to be_finished
|
expect(budget).to be_finished
|
||||||
end
|
end
|
||||||
|
|
||||||
|
describe "#valuating_or_later?" do
|
||||||
|
it "returns false before valuating" do
|
||||||
|
budget.phase = "selecting"
|
||||||
|
expect(budget).not_to be_valuating_or_later
|
||||||
|
end
|
||||||
|
|
||||||
|
it "returns true while valuating" do
|
||||||
|
budget.phase = "valuating"
|
||||||
|
expect(budget).to be_valuating_or_later
|
||||||
|
end
|
||||||
|
|
||||||
|
it "returns true after valuating" do
|
||||||
|
budget.phase = "publishing_prices"
|
||||||
|
expect(budget).to be_valuating_or_later
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
describe "#publishing_prices_or_later?" do
|
describe "#publishing_prices_or_later?" do
|
||||||
it "returns false before publishing prices" do
|
it "returns false before publishing prices" do
|
||||||
budget.phase = "valuating"
|
budget.phase = "valuating"
|
||||||
|
|||||||
Reference in New Issue
Block a user