class RubyTestHook

Public Instance Methods

command_line(filename) click to toggle source
# File lib/test_hook.rb, line 25
def command_line(filename)
  "rspec #{filename} -f json"
end
parse_out(exception) click to toggle source
# File lib/test_hook.rb, line 53
def parse_out(exception)
  exception ? exception['message'] : ''
end
post_process_unstructured_result(file, result, status) click to toggle source
Calls superclass method
# File lib/test_hook.rb, line 29
def post_process_unstructured_result(file, result, status)
  if status.errored?
    [
      result
        .gsub(/^.*(#{masked_tempfile_path}:\d+:)/) { $1 }
        .lines
        .reject { |it| it.start_with? "       from /usr/local" }
        .take(3)
        .join + "\n",
      status
    ]
  else
    super
  end
end
tempfile_extension() click to toggle source
# File lib/test_hook.rb, line 21
def tempfile_extension
  '.rb'
end
to_structured_result(result) click to toggle source
Calls superclass method
# File lib/test_hook.rb, line 45
def to_structured_result(result)
  transform(super['examples'])
end
transform(examples) click to toggle source
# File lib/test_hook.rb, line 49
def transform(examples)
  examples.map { |e| [e['full_description'].strip, e['status'].to_sym, parse_out(e['exception'])] }
end