summaryrefslogtreecommitdiff
path: root/spec/helpers/milestones_helper_spec.rb
diff options
context:
space:
mode:
authorMichael <seraph890@gmail.com>2017-03-16 11:34:46 +0000
committerRémy Coutable <remy@rymai.me>2017-03-16 11:34:46 +0000
commit6924b4d336c7498e1100153514bf29e217ae9239 (patch)
treeec0d9b32780c504ecb8328f2079cfa2e2942cde5 /spec/helpers/milestones_helper_spec.rb
parent774e0e3bfe2d35e8b7eb704ab856549559965dfe (diff)
downloadgitlab-ce-6924b4d336c7498e1100153514bf29e217ae9239.tar.gz
Issue milestone remaining time tooltip
Diffstat (limited to 'spec/helpers/milestones_helper_spec.rb')
-rw-r--r--spec/helpers/milestones_helper_spec.rb50
1 files changed, 50 insertions, 0 deletions
diff --git a/spec/helpers/milestones_helper_spec.rb b/spec/helpers/milestones_helper_spec.rb
index 68b20a1e4fc..77a4ba305bb 100644
--- a/spec/helpers/milestones_helper_spec.rb
+++ b/spec/helpers/milestones_helper_spec.rb
@@ -47,4 +47,54 @@ describe MilestonesHelper do
end
end
end
+
+ describe '#milestone_remaining_days' do
+ context 'when less than 31 days remaining' do
+ let(:milestone_remaining) { milestone_remaining_days(build_stubbed(:milestone, due_date: 12.days.from_now)) }
+
+ it 'returns days remaining' do
+ expect(milestone_remaining).to eq("<strong>11</strong> days remaining")
+ end
+ end
+
+ context 'when less than 1 year and more than 30 days remaining' do
+ let(:milestone_remaining) { milestone_remaining_days(build_stubbed(:milestone, due_date: 2.months.from_now)) }
+
+ it 'returns months remaining' do
+ expect(milestone_remaining).to eq("<strong>2</strong> months remaining")
+ end
+ end
+
+ context 'when more than 1 year remaining' do
+ let(:milestone_remaining) { milestone_remaining_days(build_stubbed(:milestone, due_date: 1.year.from_now + 2.days)) }
+
+ it 'returns years remaining' do
+ expect(milestone_remaining).to eq("<strong>1</strong> year remaining")
+ end
+ end
+
+ context 'when milestone is expired' do
+ let(:milestone_remaining) { milestone_remaining_days(build_stubbed(:milestone, due_date: 2.days.ago)) }
+
+ it 'returns "Past due"' do
+ expect(milestone_remaining).to eq("<strong>Past due</strong>")
+ end
+ end
+
+ context 'when milestone has start_date in the future' do
+ let(:milestone_remaining) { milestone_remaining_days(build_stubbed(:milestone, start_date: 2.days.from_now)) }
+
+ it 'returns "Upcoming"' do
+ expect(milestone_remaining).to eq("<strong>Upcoming</strong>")
+ end
+ end
+
+ context 'when milestone has start_date in the past' do
+ let(:milestone_remaining) { milestone_remaining_days(build_stubbed(:milestone, start_date: 2.days.ago)) }
+
+ it 'returns days elapsed' do
+ expect(milestone_remaining).to eq("<strong>2</strong> days elapsed")
+ end
+ end
+ end
end