class Git::Lint::Analyzers::CommitBodyParagraphCapitalization

Public Class Methods

defaults() click to toggle source
# File lib/git/lint/analyzers/commit_body_paragraph_capitalization.rb, line 7
def self.defaults
  {
    enabled: true,
    severity: :error
  }
end
invalid?(line) click to toggle source
# File lib/git/lint/analyzers/commit_body_paragraph_capitalization.rb, line 14
      def self.invalid?(line) = line.match?(/\A[[:lower:]].+\Z/m)

      def valid? = lowercased_lines.empty?

      def issue
        return {} if valid?

        {
          hint: "Capitalize first word.",
          lines: affected_lines
        }
      end

      private

      def lowercased_lines = commit.body_paragraphs.select { |line| self.class.invalid? line }

      def affected_lines
        klass = self.class

        commit.body_paragraphs.each.with_object([]).with_index do |(line, lines), index|
          lines << klass.build_issue_line(index, line) if klass.invalid? line
        end
      end
    end
  end
end

Public Instance Methods

affected_lines() click to toggle source
# File lib/git/lint/analyzers/commit_body_paragraph_capitalization.rb, line 31
def affected_lines
  klass = self.class

  commit.body_paragraphs.each.with_object([]).with_index do |(line, lines), index|
    lines << klass.build_issue_line(index, line) if klass.invalid? line
  end
end
issue() click to toggle source
# File lib/git/lint/analyzers/commit_body_paragraph_capitalization.rb, line 18
def issue
  return {} if valid?

  {
    hint: "Capitalize first word.",
    lines: affected_lines
  }
end
lowercased_lines(= commit.body_paragraphs.select { |line| self.class.invalid? line }) click to toggle source
# File lib/git/lint/analyzers/commit_body_paragraph_capitalization.rb, line 29
  def lowercased_lines = commit.body_paragraphs.select { |line| self.class.invalid? line }

  def affected_lines
    klass = self.class

    commit.body_paragraphs.each.with_object([]).with_index do |(line, lines), index|
      lines << klass.build_issue_line(index, line) if klass.invalid? line
    end
  end
end
valid?(= lowercased_lines.empty?) click to toggle source
# File lib/git/lint/analyzers/commit_body_paragraph_capitalization.rb, line 16
    def valid? = lowercased_lines.empty?

    def issue
      return {} if valid?

      {
        hint: "Capitalize first word.",
        lines: affected_lines
      }
    end

    private

    def lowercased_lines = commit.body_paragraphs.select { |line| self.class.invalid? line }

    def affected_lines
      klass = self.class

      commit.body_paragraphs.each.with_object([]).with_index do |(line, lines), index|
        lines << klass.build_issue_line(index, line) if klass.invalid? line
      end
    end
  end
end