Skip to content
Snippets Groups Projects
Commit 8e6e1e1d authored by Alexandru Croitor's avatar Alexandru Croitor
Browse files

Fix wording on milestone due date today

Fix wording on milestone due date, to show today instead of
hours ago or remaining, when milestone is due today.
parent da0a5c7c
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -46,12 +46,14 @@ module EntityDateHelper
# If start date is provided and elapsed, with no due date, it returns "# days elapsed"
def remaining_days_in_words(due_date, start_date = nil)
if due_date&.past?
content_tag(:strong, 'Past due')
content_tag(:strong, _('Past due'))
elsif due_date&.today?
content_tag(:strong, _('Today'))
elsif start_date&.future?
content_tag(:strong, 'Upcoming')
content_tag(:strong, _('Upcoming'))
elsif due_date
is_upcoming = (due_date - Date.today).to_i > 0
time_ago = time_ago_in_words(due_date)
time_ago = distance_of_time_in_words(due_date, Date.today)
 
# https://gitlab.com/gitlab-org/gitlab-ce/issues/49440
#
Loading
Loading
@@ -59,8 +61,8 @@ module EntityDateHelper
# of the string instead of piecewise translations.
content = time_ago
.gsub(/\d+/) { |match| "<strong>#{match}</strong>" }
.remove("about ")
remaining_or_ago = is_upcoming ? _("remaining") : _("ago")
.remove('about ')
remaining_or_ago = is_upcoming ? _('remaining') : _('ago')
 
"#{content} #{remaining_or_ago}".html_safe
elsif start_date&.past?
Loading
Loading
---
title: Fix wording on milestone due date when milestone is due today
merge_request: 32096
author:
type: changed
Loading
Loading
@@ -57,6 +57,28 @@ describe EntityDateHelper do
end
end
 
context 'when milestone due date is today' do
let(:milestone_remaining) { date_helper_class.remaining_days_in_words(Date.today) }
it 'returns today' do
expect(milestone_remaining).to eq("<strong>Today</strong>")
end
end
context 'when milestone due date is tomorrow' do
let(:milestone_remaining) { date_helper_class.remaining_days_in_words(Date.tomorrow) }
it 'returns 1 day remaining' do
expect(milestone_remaining).to eq("<strong>1</strong> day remaining")
end
it 'returns 1 day remaining when queried mid-day' do
Timecop.freeze(Time.utc(2017, 3, 17, 13, 10)) do
expect(milestone_remaining).to eq("<strong>1</strong> day remaining")
end
end
end
context 'when less than 1 year and more than 30 days remaining' do
let(:milestone_remaining) { date_helper_class.remaining_days_in_words(2.months.from_now.utc.to_date) }
 
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment