diff options
author | Sean McGivern <sean@gitlab.com> | 2019-07-18 09:23:54 +0000 |
---|---|---|
committer | Sean McGivern <sean@gitlab.com> | 2019-07-18 09:23:54 +0000 |
commit | 0d1adc9f7f990254fd88ba03011908cc4f83461d (patch) | |
tree | 9ae9ca3abd0e8db7dcf3fe21b424070d0b3c7f39 /app/serializers | |
parent | f4ce99c54225b846a1d176d819d9db94de68ac52 (diff) | |
parent | 196dfd1243d5b5cf9786ff5019049104f7c22c7a (diff) | |
download | gitlab-ce-0d1adc9f7f990254fd88ba03011908cc4f83461d.tar.gz |
Merge branch 'adjust-cycle-analytics-to-group-level' into 'master'
Adjust cycle analytics to group level
See merge request gitlab-org/gitlab-ce!30391
Diffstat (limited to 'app/serializers')
-rw-r--r-- | app/serializers/analytics_issue_entity.rb | 6 | ||||
-rw-r--r-- | app/serializers/analytics_merge_request_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/analytics_stage_entity.rb | 4 | ||||
-rw-r--r-- | app/serializers/group_analytics_stage_entity.rb | 16 | ||||
-rw-r--r-- | app/serializers/group_analytics_stage_serializer.rb | 5 |
5 files changed, 27 insertions, 6 deletions
diff --git a/app/serializers/analytics_issue_entity.rb b/app/serializers/analytics_issue_entity.rb index ab15bd0ac7a..29d4a6ae1d0 100644 --- a/app/serializers/analytics_issue_entity.rb +++ b/app/serializers/analytics_issue_entity.rb @@ -20,12 +20,12 @@ class AnalyticsIssueEntity < Grape::Entity end expose :url do |object| - url_to(:namespace_project_issue, id: object[:iid].to_s) + url_to(:namespace_project_issue, object) end private - def url_to(route, id) - public_send("#{route}_url", request.project.namespace, request.project, id) # rubocop:disable GitlabSecurity/PublicSend + def url_to(route, object) + public_send("#{route}_url", object[:path], object[:name], object[:iid].to_s) # rubocop:disable GitlabSecurity/PublicSend end end diff --git a/app/serializers/analytics_merge_request_entity.rb b/app/serializers/analytics_merge_request_entity.rb index b7134da9461..21d7eeb81b0 100644 --- a/app/serializers/analytics_merge_request_entity.rb +++ b/app/serializers/analytics_merge_request_entity.rb @@ -4,6 +4,6 @@ class AnalyticsMergeRequestEntity < AnalyticsIssueEntity expose :state expose :url do |object| - url_to(:namespace_project_merge_request, id: object[:iid].to_s) + url_to(:namespace_project_merge_request, object) end end diff --git a/app/serializers/analytics_stage_entity.rb b/app/serializers/analytics_stage_entity.rb index 8bc6da5aeeb..eb38b90fb18 100644 --- a/app/serializers/analytics_stage_entity.rb +++ b/app/serializers/analytics_stage_entity.rb @@ -8,9 +8,9 @@ class AnalyticsStageEntity < Grape::Entity expose :legend expose :description - expose :median, as: :value do |stage| + expose :project_median, as: :value do |stage| # median returns a BatchLoader instance which we first have to unwrap by using to_f # we use to_f to make sure results below 1 are presented to the end-user - stage.median.to_f.nonzero? ? distance_of_time_in_words(stage.median) : nil + stage.project_median.to_f.nonzero? ? distance_of_time_in_words(stage.project_median) : nil end end diff --git a/app/serializers/group_analytics_stage_entity.rb b/app/serializers/group_analytics_stage_entity.rb new file mode 100644 index 00000000000..81be20e7dd8 --- /dev/null +++ b/app/serializers/group_analytics_stage_entity.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +class GroupAnalyticsStageEntity < Grape::Entity + include EntityDateHelper + + expose :title + expose :name + expose :legend + expose :description + + expose :group_median, as: :value do |stage| + # group_median returns a BatchLoader instance which we first have to unwrap by using to_f + # we use to_f to make sure results below 1 are presented to the end-user + stage.group_median.to_f.nonzero? ? distance_of_time_in_words(stage.group_median) : nil + end +end diff --git a/app/serializers/group_analytics_stage_serializer.rb b/app/serializers/group_analytics_stage_serializer.rb new file mode 100644 index 00000000000..ec448dea602 --- /dev/null +++ b/app/serializers/group_analytics_stage_serializer.rb @@ -0,0 +1,5 @@ +# frozen_string_literal: true + +class GroupAnalyticsStageSerializer < BaseSerializer + entity GroupAnalyticsStageEntity +end |