Class: Fukuzatsu::Formatters::Csv

Inherits:
Object
  • Object
show all
Includes:
Base
Defined in:
lib/fukuzatsu/formatters/csv.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Base

#filename, included, #initialize, #output_directory, #output_path

Class Method Details

.writes_to_file_system?Boolean

Returns:

  • (Boolean)


9
10
11
# File 'lib/fukuzatsu/formatters/csv.rb', line 9

def self.writes_to_file_system?
  true
end

Instance Method Details

#contentObject



13
14
15
# File 'lib/fukuzatsu/formatters/csv.rb', line 13

def content
  rows + "\r\n"
end

#exportObject



17
18
19
20
21
22
23
# File 'lib/fukuzatsu/formatters/csv.rb', line 17

def export
  begin
    File.open(path_to_results, 'a') {|outfile| outfile.write(content)}
  rescue Exception => e
    puts "Unable to write output: #{e} #{e.backtrace}"
  end
end

#file_extensionObject



25
26
27
# File 'lib/fukuzatsu/formatters/csv.rb', line 25

def file_extension
  ".csv"
end

#path_to_resultsObject



29
30
31
# File 'lib/fukuzatsu/formatters/csv.rb', line 29

def path_to_results
  File.join(output_directory, "results#{file_extension}")
end

#rowsObject



33
34
35
36
37
# File 'lib/fukuzatsu/formatters/csv.rb', line 33

def rows
  summary.summaries.map do |summary|
    "#{summary.source_file},#{summary.container_name},#{summary.entity_name},#{summary.complexity}"
  end.join("\r\n")
end