Fixes distance of date in words calculation.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3016 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
668ec7f694
commit
86a9d90f07
|
@ -53,9 +53,9 @@ module ActionView
|
||||||
|
|
||||||
I18n.with_options :locale => options[:locale], :scope => :'datetime.distance_in_words' do |locale|
|
I18n.with_options :locale => options[:locale], :scope => :'datetime.distance_in_words' do |locale|
|
||||||
case distance_in_days
|
case distance_in_days
|
||||||
when 0..60 then locale.t :x_days, :count => distance_in_days
|
when 0..60 then locale.t :x_days, :count => distance_in_days.round
|
||||||
when 61..720 then locale.t :about_x_months, :count => (distance_in_days / 30).round
|
when 61..720 then locale.t :about_x_months, :count => (distance_in_days / 30).round
|
||||||
else locale.t :over_x_years, :count => (distance_in_days / 365).round
|
else locale.t :over_x_years, :count => (distance_in_days / 365).floor
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -461,10 +461,10 @@ EXPECTED
|
||||||
to_test = { Date.today => 'Due in 0 days',
|
to_test = { Date.today => 'Due in 0 days',
|
||||||
Date.today + 1 => 'Due in 1 day',
|
Date.today + 1 => 'Due in 1 day',
|
||||||
Date.today + 100 => 'Due in about 3 months',
|
Date.today + 100 => 'Due in about 3 months',
|
||||||
Date.today + 20000 => 'Due in over 55 years',
|
Date.today + 20000 => 'Due in over 54 years',
|
||||||
Date.today - 1 => '1 day late',
|
Date.today - 1 => '1 day late',
|
||||||
Date.today - 100 => 'about 3 months late',
|
Date.today - 100 => 'about 3 months late',
|
||||||
Date.today - 20000 => 'over 55 years late',
|
Date.today - 20000 => 'over 54 years late',
|
||||||
}
|
}
|
||||||
to_test.each do |date, expected|
|
to_test.each do |date, expected|
|
||||||
assert_equal expected, due_date_distance_in_words(date)
|
assert_equal expected, due_date_distance_in_words(date)
|
||||||
|
|
Loading…
Reference in New Issue