Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/presenters/ci/pipeline_artifacts/code_quality_mr_diff_presenter.rb')
-rw-r--r--app/presenters/ci/pipeline_artifacts/code_quality_mr_diff_presenter.rb10
1 files changed, 6 insertions, 4 deletions
diff --git a/app/presenters/ci/pipeline_artifacts/code_quality_mr_diff_presenter.rb b/app/presenters/ci/pipeline_artifacts/code_quality_mr_diff_presenter.rb
index 2fe3104fe69..d28b4523fd5 100644
--- a/app/presenters/ci/pipeline_artifacts/code_quality_mr_diff_presenter.rb
+++ b/app/presenters/ci/pipeline_artifacts/code_quality_mr_diff_presenter.rb
@@ -5,18 +5,20 @@ module Ci
class CodeQualityMrDiffPresenter < Gitlab::View::Presenter::Delegated
include Gitlab::Utils::StrongMemoize
- def for_files(filenames)
- quality_files = raw_report["files"].select { |key| filenames.include?(key) }
+ def for_files(merge_request)
+ filenames = merge_request.new_paths
+ mr_diff_report = raw_report(merge_request.id)
+ quality_files = mr_diff_report["files"]&.select { |key| filenames.include?(key) }
{ files: quality_files }
end
private
- def raw_report
+ def raw_report(merge_request_id)
strong_memoize(:raw_report) do
self.each_blob do |blob|
- Gitlab::Json.parse(blob).with_indifferent_access
+ Gitlab::Json.parse(blob).with_indifferent_access.fetch("merge_request_#{merge_request_id}", {})
end
end
end