40 lines
919 B
Ruby
40 lines
919 B
Ruby
require "rspec/core/formatters/base_formatter"
|
|
|
|
module Autospec; end
|
|
class Autospec::Formatter < RSpec::Core::Formatters::BaseFormatter
|
|
|
|
def dump_summary(duration, total, failures, pending)
|
|
# failed_specs = examples.delete_if{|e| e.execution_result[:status] != "failed"}.map{|s| s.metadata[:location]}
|
|
|
|
# # if this fails don't kill everything
|
|
# begin
|
|
# FileUtils.mkdir_p('tmp')
|
|
# File.open("./tmp/rspec_result","w") do |f|
|
|
# f.puts failed_specs.join("\n")
|
|
# end
|
|
# rescue
|
|
# # nothing really we can do, at least don't kill the test runner
|
|
# end
|
|
super
|
|
end
|
|
|
|
def start(count)
|
|
FileUtils.mkdir_p('tmp')
|
|
@fail_file = File.open("./tmp/rspec_result","w")
|
|
super(count)
|
|
end
|
|
|
|
def close
|
|
@fail_file.close
|
|
super
|
|
end
|
|
|
|
def example_failed(example)
|
|
@fail_file.puts example.metadata[:location]
|
|
@fail_file.flush
|
|
super(example)
|
|
end
|
|
|
|
|
|
end
|