Class: Danger::DangerMention
- Inherits:
-
Plugin
- Object
- Plugin
- Danger::DangerMention
- Defined in:
- lib/danger_plugin.rb
Overview
Automatically mention potential reviewers on pull requests. It downloads and parses the blame information of changed files to figure out who may be a good reviewer.
Instance Method Summary collapse
-
#run(max_reviewers = 3, file_blacklist = [], user_blacklist = []) ⇒ void
Mention potential reviewers.
Instance Method Details
#run(max_reviewers = 3, file_blacklist = [], user_blacklist = []) ⇒ void
This method returns an undefined value.
Mention potential reviewers.
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/danger_plugin.rb', line 40 def run(max_reviewers = 3, file_blacklist = [], user_blacklist = []) files = select_files(file_blacklist) return if files.empty? = {} compose_urls(files).each do |url| result = parse_blame(url) .merge!(result) { |_, m, n| m + n } end reviewers = find_reviewers(, user_blacklist, max_reviewers) if reviewers.count > 0 reviewers = reviewers.map { |r| '@' + r } result = format('By analyzing the blame information on this pull '\ 'request, we identified %s to be potential reviewer%s.', reviewers.join(', '), reviewers.count > 1 ? 's' : '') markdown result end end |