bjeanes / dot-files

everyone has one...

dot-files / autotest
100644 19 lines (17 sloc) 0.608 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
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}", "~/.ruby_fail.png", 2, "-s"
      else
        growl "Tests", "#{output}", "~/.ruby_ok.png"
      end
    end
  end
end