From 47869780a6ff5f60602af3b2caffe826519e5b5c Mon Sep 17 00:00:00 2001 From: Eric Davis Date: Wed, 5 Aug 2009 13:45:36 -0700 Subject: [PATCH] [#2847] Created a very basic set of hooks for the Deliverables table in the Budget plugin. --- init.rb | 1 + lib/overhead_budget_hook.rb | 19 ++++++++++ spec/lib/overhead_budget_hook_spec.rb | 50 +++++++++++++++++++++++++++ 3 files changed, 70 insertions(+) create mode 100644 lib/overhead_budget_hook.rb create mode 100644 spec/lib/overhead_budget_hook_spec.rb 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