dotfiles/ruby/autotest/autotest

19 lines
650 B
Plaintext

require 'autotest/redgreen'
require 'autotest/timestamp'
module Autotest::Growl
def self.growl title, msg, img, pri=0, sticky=""
system "growlnotify -n autotest -d #{title} --image #{img} -p #{pri} -m #{msg.inspect} #{title} #{sticky}"
end
Autotest.add_hook :ran_command do |at|
unless at.results.empty?
output = at.results.last.slice(/(\d+)\s.*(?:examples|assertions)?,\s(\d+)\s.*failures?/)
if output =~ /[1-9]\sfailures?/
growl "Tests", "#{output}", "~/.config/ruby/autotest/ruby_fail.png", 2, "-s"
else
growl "Tests", "#{output}", "~/.config/ruby/autotest/ruby_ok.png"
end
end
end
end