Class: OutputResults
- Inherits:
-
Object
- Object
- OutputResults
- Defined in:
- lib/puppet-check/output_results.rb
Overview
class to handle outputting diagnostic results in desired format
Class Method Summary collapse
-
.run(files, format) ⇒ Object
output the results in various formats.
-
.text(files) ⇒ Object
output the results as text.
Class Method Details
.run(files, format) ⇒ Object
output the results in various formats
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/puppet-check/output_results.rb', line 6 def self.run(files, format) # remove empty entries files.delete_if { |_, sorted_files| sorted_files.empty? } # output hash according to specified format case format when 'text' text(files) when 'yaml' require 'yaml' # maintain filename format consistency among output formats files.transform_keys!(&:to_s) puts Psych.dump(files, indentation: 2) when 'json' require 'json' puts JSON.pretty_generate(files) else raise "puppet-check: Unsupported output format '#{format}' was specified." end end |
.text(files) ⇒ Object
output the results as text
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/puppet-check/output_results.rb', line 28 def self.text(files) private_class_method :method # errors if files.key?(:errors) puts "\033[31mThe following files have errors:\033[0m" files[:errors].each { |file, errors| puts "-- #{file}:\n#{errors.join("\n")}" } end # warnings if files.key?(:warnings) puts "\n\033[33mThe following files have warnings:\033[0m" files[:warnings].each { |file, warnings| puts "-- #{file}:\n#{warnings.join("\n")}" } end # cleans if files.key?(:clean) print "\n\033[32mThe following files have no errors or warnings:\033[0m\n-- " puts files[:clean].join("\n-- ") end # ignores return unless files.key?(:ignored) print "\n\033[36mThe following files have unrecognized formats and therefore were not processed:\033[0m\n-- " puts files[:ignored].join("\n-- ") end |