summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOswaldo Ferreira <oswaldo@gitlab.com>2018-01-03 11:57:07 -0200
committerOswaldo Ferreira <oswaldo@gitlab.com>2018-01-03 11:57:07 -0200
commit87a437995e4bec0c9b84c1ae2833cf7186709911 (patch)
treefa366653d23b831caae628b9da4defa5e1a260c5
parentfeee48a4cfe37ac25c55d82cba0d96b4b37d85a1 (diff)
downloadgitlab-ce-osw-introduce-merge-request-statistics.tar.gz
Simplify metrics fetching for closed/merged MRsosw-introduce-merge-request-statistics
-rw-r--r--app/serializers/merge_request_widget_entity.rb11
1 files changed, 5 insertions, 6 deletions
diff --git a/app/serializers/merge_request_widget_entity.rb b/app/serializers/merge_request_widget_entity.rb
index 83ea36adcc1..e905e6876c2 100644
--- a/app/serializers/merge_request_widget_entity.rb
+++ b/app/serializers/merge_request_widget_entity.rb
@@ -187,12 +187,11 @@ class MergeRequestWidgetEntity < IssuableEntity
def build_metrics(merge_request)
# There's no need to query and serialize metrics data for merge requests that are not
# merged or closed.
- case merge_request.state
- when 'merged'
- merge_request.metrics&.merged_by_id ? merge_request.metrics : build_metrics_from_events(merge_request)
- when 'closed'
- merge_request.metrics&.latest_closed_by_id ? merge_request.metrics : build_metrics_from_events(merge_request)
- end
+ return unless merge_request.merged? || merge_request.closed?
+ return merge_request.metrics if merge_request.merged? && merge_request.metrics&.merged_by_id
+ return merge_request.metrics if merge_request.closed? && merge_request.metrics&.latest_closed_by_id
+
+ build_metrics_from_events(merge_request)
end
def build_metrics_from_events(merge_request)