class Git::Lint::Analyzers::CommitAuthorName

Public Class Methods

defaults() click to toggle source
# File lib/git/lint/analyzers/commit_author_name.rb, line 7
def self.defaults
  {
    enabled: true,
    severity: :error,
    minimum: 2
  }
end
new(commit:, settings: self.class.defaults, validator: Validators::Name) click to toggle source
Calls superclass method Git::Lint::Analyzers::Abstract::new
# File lib/git/lint/analyzers/commit_author_name.rb, line 15
def initialize commit:, settings: self.class.defaults, validator: Validators::Name
  super commit: commit, settings: settings
  @validator = validator
end

Public Instance Methods

issue() click to toggle source
# File lib/git/lint/analyzers/commit_author_name.rb, line 22
def issue
  return {} if valid?

  {hint: "Author name must consist of #{minimum} parts (minimum)."}
end
minimum() click to toggle source
# File lib/git/lint/analyzers/commit_author_name.rb, line 32
def minimum
  settings.fetch __method__
end
valid?(= validator.new(commit.author_name, minimum: minimum).valid?) click to toggle source
# File lib/git/lint/analyzers/commit_author_name.rb, line 20
  def valid? = validator.new(commit.author_name, minimum: minimum).valid?

  def issue
    return {} if valid?

    {hint: "Author name must consist of #{minimum} parts (minimum)."}
  end

  private

  attr_reader :validator

  def minimum
    settings.fetch __method__
  end
end