class Gitlab::Dangerfiles::Weightage::Maintainers

@api private

Attributes

maintainers[R]

Public Class Methods

new(maintainers) click to toggle source
# File lib/gitlab/dangerfiles/weightage/maintainers.rb, line 10
def initialize(maintainers)
  @maintainers = maintainers
end

Public Instance Methods

execute() click to toggle source
# File lib/gitlab/dangerfiles/weightage/maintainers.rb, line 14
def execute
  maintainers.each_with_object([]) do |maintainer, weighted_maintainers|
    add_weighted_reviewer(weighted_maintainers, maintainer, Gitlab::Dangerfiles::Weightage::BASE_REVIEWER_WEIGHT)
  end
end

Private Instance Methods

add_weighted_reviewer(reviewers, reviewer, weight) click to toggle source
# File lib/gitlab/dangerfiles/weightage/maintainers.rb, line 24
def add_weighted_reviewer(reviewers, reviewer, weight)
  if reviewer.reduced_capacity
    reviewers.fill(reviewer, reviewers.size, weight)
  else
    reviewers.fill(reviewer, reviewers.size, weight * Gitlab::Dangerfiles::Weightage::CAPACITY_MULTIPLIER)
  end
end