diff options
author | Phil Hughes <me@iamphill.com> | 2019-02-08 19:43:34 +0000 |
---|---|---|
committer | Phil Hughes <me@iamphill.com> | 2019-02-08 19:43:34 +0000 |
commit | 5b23f2b016f4e5d33387d7474148d2a59b213ee6 (patch) | |
tree | 50e406dc8199be0acf60f69532b8076402764e7b | |
parent | fe572c0e49e8c5add7c055d3df22e3df032c11d5 (diff) | |
parent | 20ce370f4bcacaf86a0178505eb183e3d59e2406 (diff) | |
download | gitlab-ce-5b23f2b016f4e5d33387d7474148d2a59b213ee6.tar.gz |
Merge branch '57428-actionview-template-error-undefined-method-for-nil-nilclass' into 'master'56965-rocket-mouseover-very-sensitive-alters-flag-positioning
Resolve "ActionView::Template::Error: undefined method `>' for nil:NilClass"
Closes #57428
See merge request gitlab-org/gitlab-ce!25028
-rw-r--r-- | app/views/projects/issues/_merge_requests_status.html.haml | 7 | ||||
-rw-r--r-- | spec/views/projects/issues/_merge_requests_status.html.haml_spec.rb | 22 |
2 files changed, 27 insertions, 2 deletions
diff --git a/app/views/projects/issues/_merge_requests_status.html.haml b/app/views/projects/issues/_merge_requests_status.html.haml index 43e4c8db93f..90838a75214 100644 --- a/app/views/projects/issues/_merge_requests_status.html.haml +++ b/app/views/projects/issues/_merge_requests_status.html.haml @@ -12,11 +12,14 @@ - mr_status_class = 'closed' - else - mr_status_date = merge_request.created_at - - mr_status_title = _('Opened') + - mr_status_title = mr_status_date ? _('Opened') : _('Open') - mr_status_icon = 'issue-open-m' - mr_status_class = 'open' -- mr_status_tooltip = "<div><span class=\"bold\">#{mr_status_title}</span> #{time_ago_in_words(mr_status_date)} ago</div><span class=\"text-tertiary\">#{l(mr_status_date.to_time, format: time_format)}</span>" +- if mr_status_date + - mr_status_tooltip = "<div><span class=\"bold\">#{mr_status_title}</span> #{time_ago_in_words(mr_status_date)} ago</div><span class=\"text-tertiary\">#{l(mr_status_date.to_time, format: time_format)}</span>" +- else + - mr_status_tooltip = "<div><span class=\"bold\">#{mr_status_title}</span></div>" %span.mr-status-wrapper.suggestion-help-hover{ class: css_class, data: { toggle: 'tooltip', placement: 'bottom', html: 'true', title: mr_status_tooltip } } = sprite_icon(mr_status_icon, size: 16, css_class: "merge-request-status #{mr_status_class}") diff --git a/spec/views/projects/issues/_merge_requests_status.html.haml_spec.rb b/spec/views/projects/issues/_merge_requests_status.html.haml_spec.rb new file mode 100644 index 00000000000..02c225292ce --- /dev/null +++ b/spec/views/projects/issues/_merge_requests_status.html.haml_spec.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true +require 'spec_helper' + +describe 'projects/issues/_merge_requests_status.html.haml' do + it 'shows date of status change in tooltip' do + merge_request = create(:merge_request, created_at: 1.month.ago) + + render partial: 'projects/issues/merge_requests_status', + locals: { merge_request: merge_request, css_class: '' } + + expect(rendered).to match("Opened.*about 1 month ago") + end + + it 'shows only status in tooltip if date is not set' do + merge_request = create(:merge_request, state: :closed) + + render partial: 'projects/issues/merge_requests_status', + locals: { merge_request: merge_request, css_class: '' } + + expect(rendered).to match("Closed") + end +end |