[#2847] Implemented and tested the hooks need to display overhead_spent.

This commit is contained in:
Eric Davis
2009-08-05 14:29:29 -07:00
parent 47869780a6
commit 81ed5a2385
3 changed files with 48 additions and 4 deletions

View File

@@ -12,7 +12,9 @@ describe OverheadBudgetHook, "#plugin_budget_view_deliverable_list_header", :typ
stub_view_to_use_controller_instance
end
it 'should return a table header with "Overhead Spent"' do
call_hook(:plugin_budget_view_deliverable_list_header, {}).should have_tag('th','Overhead Spent')
end
end
describe OverheadBudgetHook, "#plugin_budget_view_deliverable_summary_row", :type => :view do
@@ -22,7 +24,39 @@ describe OverheadBudgetHook, "#plugin_budget_view_deliverable_summary_row", :typ
stub_view_to_use_controller_instance
end
it 'should return a table cell to align the table' do
call_hook(:plugin_budget_view_deliverable_summary_row, {}).should have_tag('td')
end
describe 'for users with management rights' do
before(:each) do
@deliverable = Deliverable.new
OverheadBudgetHook.instance.stub!(:allowed_management?).and_return(true)
end
it 'should display the amount of overhead that has been spent' do
@deliverable.should_receive(:overhead_spent).and_return(100)
call_hook(:plugin_budget_view_deliverable_summary_row, {:deliverable => @deliverable}).should match(/100/)
end
it 'should display the amount as a currency' do
@deliverable.should_receive(:overhead_spent).and_return(100)
call_hook(:plugin_budget_view_deliverable_summary_row, {:deliverable => @deliverable}).should have_tag('td', '$100')
end
it 'should round the amount to 0 decimal places' do
@deliverable.should_receive(:overhead_spent).and_return(105.99)
call_hook(:plugin_budget_view_deliverable_summary_row, {:deliverable => @deliverable}).should have_tag('td', '$106')
end
end
describe 'for users with management rights' do
it 'should be an empty table cell' do
OverheadBudgetHook.instance.stub!(:allowed_management?).and_return(false)
deliverable = Deliverable.new
call_hook(:plugin_budget_view_deliverable_summary_row, {:deliverable => deliverable }).should have_tag('td','')
end
end
end
describe OverheadBudgetHook, "#plugin_budget_view_deliverable_details_row", :type => :view do