class ElirJsonFormatter
Attributes
output_hash[R]
Public Class Methods
new(output)
click to toggle source
Calls superclass method
# File lib/elir_json_formatter.rb, line 9 def initialize(output) super @output_hash = {} @env_final = {} end
Public Instance Methods
example_failed(failure)
click to toggle source
# File lib/elir_json_formatter.rb, line 23 def example_failed(failure) process_example(failure.example) end
example_passed(passed)
click to toggle source
# File lib/elir_json_formatter.rb, line 15 def example_passed(passed) process_example(passed.example) end
example_pending(pending)
click to toggle source
# File lib/elir_json_formatter.rb, line 19 def example_pending(pending) process_example(pending.example) end
Private Instance Methods
format_envs(envs)
click to toggle source
# File lib/elir_json_formatter.rb, line 50 def format_envs(envs) return unless ENV['labels'] envs.to_s.split(/\W+/).each do |k,v| @env_final[k.downcase.to_sym] = ENV[k] end @env_final end
format_example(example)
click to toggle source
# File lib/elir_json_formatter.rb, line 36 def format_example(example) { id: example.id, description: example.description, full_description: example.full_description, status: example.execution_result.status.to_s, file_path: example.metadata[:file_path], line_number: example.metadata[:line_number], run_time: example.execution_result.run_time, pending_message: example.execution_result.pending_message, env: format_envs(ENV['labels']) } end
process_example(example)
click to toggle source
# File lib/elir_json_formatter.rb, line 29 def process_example(example) @output_hash = format_example(example) output.write @output_hash.to_json @output_hash = {} @env_final = {} end