playing around with showing the list of untested files when the user hits ctrl-c
This commit is contained in:
parent
133ad90894
commit
7f8e573fb9
|
@ -29,6 +29,17 @@ module Hydra #:nodoc:
|
||||||
# * :autosort
|
# * :autosort
|
||||||
# * Set to false to disable automatic sorting by historical run-time per file
|
# * Set to false to disable automatic sorting by historical run-time per file
|
||||||
def initialize(opts = { })
|
def initialize(opts = { })
|
||||||
|
#at_exit do
|
||||||
|
trap("SIGINT") do
|
||||||
|
begin
|
||||||
|
puts "Testing halted by user. Untested files:"
|
||||||
|
puts @incomplete_files.join("\n")
|
||||||
|
#shutdown_all_workers
|
||||||
|
rescue
|
||||||
|
puts $!.inspect
|
||||||
|
puts $!.backtrace.join("\n")
|
||||||
|
end
|
||||||
|
end
|
||||||
opts.stringify_keys!
|
opts.stringify_keys!
|
||||||
config_file = opts.delete('config') { nil }
|
config_file = opts.delete('config') { nil }
|
||||||
if config_file
|
if config_file
|
||||||
|
@ -155,6 +166,7 @@ module Hydra #:nodoc:
|
||||||
worker[:io].close if worker[:io]
|
worker[:io].close if worker[:io]
|
||||||
end
|
end
|
||||||
@listeners.each{|t| t.exit}
|
@listeners.each{|t| t.exit}
|
||||||
|
trace "Workers shut down"
|
||||||
end
|
end
|
||||||
|
|
||||||
def process_messages
|
def process_messages
|
||||||
|
|
|
@ -14,7 +14,7 @@ module Hydra #:nodoc:
|
||||||
return Message.build(eval(message.chomp))
|
return Message.build(eval(message.chomp))
|
||||||
rescue SyntaxError, NameError
|
rescue SyntaxError, NameError
|
||||||
# uncomment to help catch remote errors by seeing all traffic
|
# uncomment to help catch remote errors by seeing all traffic
|
||||||
#$stderr.write "Not a message: [#{message.inspect}]\n"
|
$stderr.write "Not a message: [#{message.inspect}]\n"
|
||||||
return gets
|
return gets
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -26,6 +26,8 @@ module Hydra #:nodoc:
|
||||||
raise UnprocessableMessage unless message.is_a?(Hydra::Message)
|
raise UnprocessableMessage unless message.is_a?(Hydra::Message)
|
||||||
@writer.write(message.serialize+"\n")
|
@writer.write(message.serialize+"\n")
|
||||||
rescue Errno::EPIPE
|
rescue Errno::EPIPE
|
||||||
|
$stderr.write $!.inspect
|
||||||
|
$stderr.write $!.backtrace.join("\n")
|
||||||
raise IOError
|
raise IOError
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue