Fixed that time entries report by week breaks on edge cases (#5329).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@11471 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
e37ee0d21b
commit
0a6a7f0ed7
|
@ -63,7 +63,7 @@ module Redmine
|
|||
when 'month'
|
||||
row['month'] = "#{row['tyear']}-#{row['tmonth']}"
|
||||
when 'week'
|
||||
row['week'] = "#{row['tyear']}-#{row['tweek']}"
|
||||
row['week'] = "#{row['spent_on'].cwyear}-#{row['tweek']}"
|
||||
when 'day'
|
||||
row['day'] = "#{row['spent_on']}"
|
||||
end
|
||||
|
@ -90,7 +90,7 @@ module Redmine
|
|||
@periods << "#{date_from.year}-#{date_from.month}"
|
||||
date_from = (date_from + 1.month).at_beginning_of_month
|
||||
when 'week'
|
||||
@periods << "#{date_from.year}-#{date_from.to_date.cweek}"
|
||||
@periods << "#{date_from.to_date.cwyear}-#{date_from.to_date.cweek}"
|
||||
date_from = (date_from + 7.day).at_beginning_of_week
|
||||
when 'day'
|
||||
@periods << "#{date_from.to_date}"
|
||||
|
|
|
@ -125,6 +125,32 @@ class TimeEntryReportsControllerTest < ActionController::TestCase
|
|||
:attributes => {:action => "/projects/ecookbook/issues/1/time_entries/report", :id => 'query_form'}
|
||||
end
|
||||
|
||||
def test_report_by_week_should_use_commercial_year
|
||||
TimeEntry.delete_all
|
||||
TimeEntry.generate!(:hours => '2', :spent_on => '2009-12-25') # 2009-52
|
||||
TimeEntry.generate!(:hours => '4', :spent_on => '2009-12-31') # 2009-53
|
||||
TimeEntry.generate!(:hours => '8', :spent_on => '2010-01-01') # 2009-53
|
||||
TimeEntry.generate!(:hours => '16', :spent_on => '2010-01-05') # 2010-1
|
||||
|
||||
get :report, :columns => 'week', :from => "2009-12-25", :to => "2010-01-05", :criteria => ["project"]
|
||||
assert_response :success
|
||||
|
||||
assert_select '#time-report thead tr' do
|
||||
assert_select 'th:nth-child(1)', :text => 'Project'
|
||||
assert_select 'th:nth-child(2)', :text => '2009-52'
|
||||
assert_select 'th:nth-child(3)', :text => '2009-53'
|
||||
assert_select 'th:nth-child(4)', :text => '2010-1'
|
||||
assert_select 'th:nth-child(5)', :text => 'Total'
|
||||
end
|
||||
assert_select '#time-report tbody tr' do
|
||||
assert_select 'td:nth-child(1)', :text => 'eCookbook'
|
||||
assert_select 'td:nth-child(2)', :text => '2.00'
|
||||
assert_select 'td:nth-child(3)', :text => '12.00'
|
||||
assert_select 'td:nth-child(4)', :text => '16.00'
|
||||
assert_select 'td:nth-child(5)', :text => '30.00' # Total
|
||||
end
|
||||
end
|
||||
|
||||
def test_report_should_propose_association_custom_fields
|
||||
get :report
|
||||
assert_response :success
|
||||
|
|
Loading…
Reference in New Issue