diff --git a/init.rb b/init.rb index ed1fe90..8247e8a 100644 --- a/init.rb +++ b/init.rb @@ -12,6 +12,7 @@ Dispatcher.to_prepare do end require 'overhead_timesheet_hook' +require 'overhead_budget_hook' Redmine::Plugin.register :redmine_overhead do name 'Overhead plugin' diff --git a/lib/overhead_budget_hook.rb b/lib/overhead_budget_hook.rb new file mode 100644 index 0000000..a9e2fe1 --- /dev/null +++ b/lib/overhead_budget_hook.rb @@ -0,0 +1,19 @@ +class OverheadBudgetHook < Redmine::Hook::ViewListener + + def plugin_budget_view_deliverable_list_header(context={}) + return content_tag(:th, '') + end + + def plugin_budget_view_deliverable_summary_row(context={}) + return content_tag(:td, '') + end + + def plugin_budget_view_deliverable_details_row(context={}) + return content_tag(:td, '') + end + + def plugin_budget_view_deliverable_description_row(context={}) + return content_tag(:td, '') + end + +end diff --git a/spec/lib/overhead_budget_hook_spec.rb b/spec/lib/overhead_budget_hook_spec.rb new file mode 100644 index 0000000..cf0ee6c --- /dev/null +++ b/spec/lib/overhead_budget_hook_spec.rb @@ -0,0 +1,50 @@ +require File.dirname(__FILE__) + '/../spec_helper' + +# Hack to make RSpec play nicely with call_hook's default contexts +def stub_view_to_use_controller_instance + self.stub!(:controller).and_return(@controller) +end + +describe OverheadBudgetHook, "#plugin_budget_view_deliverable_list_header", :type => :view do + include Redmine::Hook::Helper + + before(:each) do + stub_view_to_use_controller_instance + end + + +end + +describe OverheadBudgetHook, "#plugin_budget_view_deliverable_summary_row", :type => :view do + include Redmine::Hook::Helper + + before(:each) do + stub_view_to_use_controller_instance + end + + +end + +describe OverheadBudgetHook, "#plugin_budget_view_deliverable_details_row", :type => :view do + include Redmine::Hook::Helper + + before(:each) do + stub_view_to_use_controller_instance + end + + it 'should return an empty table cell to align the table' do + call_hook(:plugin_budget_view_deliverable_details_row, {}).should have_tag('td','') + end +end + +describe OverheadBudgetHook, "#plugin_budget_view_deliverable_description_row", :type => :view do + include Redmine::Hook::Helper + + before(:each) do + stub_view_to_use_controller_instance + end + + it 'should return an empty table cell to align the table' do + call_hook(:plugin_budget_view_deliverable_description_row, {}).should have_tag('td','') + end +end