def handle_results results
results = results.gsub(/\e\[\d+m/, '')
failed = results.scan self.failed_results_re
completed = results[self.completed_re]
if completed then
completed = completed.scan(/(\d+) (\w+)/).map { |v, k| [k, v.to_i] }
self.latest_results = Hash[*completed.flatten]
self.files_to_test = consolidate_failures failed
color = self.files_to_test.empty? ? :green : :red
hook color unless $TESTING
else
self.latest_results = nil
end
self.tainted = true unless self.files_to_test.empty?
end