class Git::Cop::Styles::CommitBodyIssueTrackerLink
Public Class Methods
defaults()
click to toggle source
# File lib/git/cop/styles/commit_body_issue_tracker_link.rb, line 7 def self.defaults { enabled: true, severity: :error, blacklist: [ "(f|F)ix(es|ed)?\\s\\#\\d+", "(c|C)lose(s|d)?\\s\\#\\d+", "(r|R)esolve(s|d)?\\s\\#\\d+", "github\\.com\\/.+\\/issues\\/\\d+" ] } end
Public Instance Methods
issue()
click to toggle source
# File lib/git/cop/styles/commit_body_issue_tracker_link.rb, line 24 def issue return {} if valid? { hint: "Explain issue instead of using link. Avoid: #{graylist.to_hint}.", lines: affected_lines } end
valid?()
click to toggle source
# File lib/git/cop/styles/commit_body_issue_tracker_link.rb, line 20 def valid? commit.body_lines.none? { |line| invalid_line? line } end
Protected Instance Methods
load_graylist()
click to toggle source
# File lib/git/cop/styles/commit_body_issue_tracker_link.rb, line 35 def load_graylist Kit::Graylist.new settings.fetch :blacklist end
Private Instance Methods
affected_lines()
click to toggle source
# File lib/git/cop/styles/commit_body_issue_tracker_link.rb, line 45 def affected_lines commit.body_lines.each.with_object([]).with_index do |(line, lines), index| lines << self.class.build_issue_line(index, line) if invalid_line?(line) end end
invalid_line?(line)
click to toggle source
# File lib/git/cop/styles/commit_body_issue_tracker_link.rb, line 41 def invalid_line? line line.match?(/.*#{Regexp.union graylist.to_regexp}.*/) end