Class: ValeLinterReport

Inherits:
LinterReport show all
Defined in:
lib/tasks/helpers/vale_report.rb

Instance Attribute Summary collapse

Attributes inherited from LinterReport

#linter_full_report, #linter_raw_output, #linter_summary_report

Instance Method Summary collapse

Methods inherited from LinterReport

#get_linter_full_report, #get_linter_summary_report, #get_raw_output, #initialize

Constructor Details

This class inherits a constructor from LinterReport

Instance Attribute Details

#formatterObject

Returns the value of attribute formatter.



5
6
7
# File 'lib/tasks/helpers/vale_report.rb', line 5

def formatter
  @formatter
end

#linter_full_report_jsonObject

Returns the value of attribute linter_full_report_json.



5
6
7
# File 'lib/tasks/helpers/vale_report.rb', line 5

def linter_full_report_json
  @linter_full_report_json
end

#linter_severity_totalsObject

Returns the value of attribute linter_severity_totals.



5
6
7
# File 'lib/tasks/helpers/vale_report.rb', line 5

def linter_severity_totals
  @linter_severity_totals
end

#linter_summary_report_jsonObject

Returns the value of attribute linter_summary_report_json.



5
6
7
# File 'lib/tasks/helpers/vale_report.rb', line 5

def linter_summary_report_json
  @linter_summary_report_json
end

#table_column_widthsObject

Returns the value of attribute table_column_widths.



5
6
7
# File 'lib/tasks/helpers/vale_report.rb', line 5

def table_column_widths
  @table_column_widths
end

#table_rowsObject

Returns the value of attribute table_rows.



5
6
7
# File 'lib/tasks/helpers/vale_report.rb', line 5

def table_rows
  @table_rows
end

Instance Method Details

#format_linter_outputObject



7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/tasks/helpers/vale_report.rb', line 7

def format_linter_output
  if @linter_raw_output.strip.empty?
    @table_rows = []
    @linter_severity_totals = { "error" => 0, "warning" => 0, "suggestion" => 0 }
  else
    set_table_rows
    set_linter_severity_totals_from_rows
  end

  set_linter_full_report
  set_linter_summary_report
  set_linter_summary_report_json
end

#set_linter_full_reportObject



21
22
23
# File 'lib/tasks/helpers/vale_report.rb', line 21

def set_linter_full_report
  add_formatted_rows_to_detail_output
end

#set_linter_summary_reportObject



25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/tasks/helpers/vale_report.rb', line 25

def set_linter_summary_report
  if @linter_severity_totals.nil?
    set_linter_severity_totals_from_rows
  end

  error = @linter_severity_totals["error"]
  warning = @linter_severity_totals["warning"]
  suggestion = @linter_severity_totals["suggestion"]

  @linter_summary_report = []

  @linter_summary_report << "\n#{'=' * [0, 40].max}"
  @linter_summary_report << "\e[1m Vale summary\e[0m"
  @linter_summary_report << "-" * [0, 40].max
  @linter_summary_report << "  Errors:      #{error.positive? ? set_output_text_color(error, 'error') : error}"
  @linter_summary_report << "  Warnings:    #{warning.positive? ? set_output_text_color(warning, 'warning') : warning}"
  @linter_summary_report << "  Suggestions: #{suggestion.positive? ? set_output_text_color(suggestion, 'suggestion') : suggestion}"
  @linter_summary_report << "-" * [0, 40].max
  @linter_summary_report.join("\n")
end

#set_linter_summary_report_jsonObject



46
47
48
49
50
51
# File 'lib/tasks/helpers/vale_report.rb', line 46

def set_linter_summary_report_json
  if @linter_severity_totals.nil?
    set_linter_severity_totals_from_rows
  end
  @linter_summary_report_json = JSON.generate(@linter_severity_totals)
end