Make current_budget accessible in controller and views
This commit is contained in:
@@ -25,6 +25,7 @@ class ApplicationController < ActionController::Base
|
|||||||
|
|
||||||
layout :set_layout
|
layout :set_layout
|
||||||
respond_to :html
|
respond_to :html
|
||||||
|
helper_method :current_budget
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
@@ -120,4 +121,8 @@ class ApplicationController < ActionController::Base
|
|||||||
params[:filter] ||= "selected"
|
params[:filter] ||= "selected"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def current_budget
|
||||||
|
Budget.current
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
19
spec/controllers/application_controller_spec.rb
Normal file
19
spec/controllers/application_controller_spec.rb
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe ApplicationController do
|
||||||
|
|
||||||
|
describe "#current_budget" do
|
||||||
|
|
||||||
|
it "returns the last budget that is not in draft phase" do
|
||||||
|
old_budget = create(:budget, phase: "finished", created_at: 2.years.ago)
|
||||||
|
previous_budget = create(:budget, phase: "accepting", created_at: 1.year.ago)
|
||||||
|
current_budget = create(:budget, phase: "accepting", created_at: 1.month.ago)
|
||||||
|
next_budget = create(:budget, phase: "drafting", created_at: 1.week.ago)
|
||||||
|
|
||||||
|
budget = subject.instance_eval{ current_budget }
|
||||||
|
expect(budget).to eq(current_budget)
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
Reference in New Issue
Block a user