Revision: 5556
Updated Code
at March 15, 2008 13:39 by peleteiro
Updated Code
require 'autotest/redgreen' # You need mpg321, so: # sudo port install mpg321 # Resources from: # http://www.thelucid.com/articles/2007/07/30/autotest-growl-fail-pass-smilies # http://www.fozworks.com/2007/7/28/autotest-sound-effects module Autotest::Growl def self.growl(title, msg, type) pri = { :fail => 2, :pending => 1, :pass => 0 } system "growlnotify --name Autotest --image ~/.autotest_resources/#{type}.png --title #{title.inspect} --message #{msg.inspect} --priority #{pri[type]}" end Autotest.add_hook :ran_command do |autotest| results = [autotest.results].flatten.join("\n") output = results.slice(/(\d+)\s+examples?,\s*(\d+)\s+failures?(,\s*(\d+)\s+pending)?/) if output =~ /[1-9]\sfailures?/ growl "FAIL", "#{output}", :fail elsif output =~ /[1-9]\spending?/ growl "PENDING", "#{output}", :pending else growl "PASS", "#{output}", :pass end end end module Autotest::Sound def self.play_sound sound system "mpg321 ~/.autotest_resources/#{sound}.mp3 > /dev/null 2>&1 &" end Autotest.add_hook :ran_command do |autotest| results = [autotest.results].flatten.join("\n") output = results.slice(/(\d+)\s+examples?,\s*(\d+)\s+failures?(,\s*(\d+)\s+pending)?/) if output =~ /[1-9]\sfailures?/ play_sound :fail elsif output =~ /[1-9]\spending?/ play_sound :pending else play_sound :pass end end end
Revision: 5555
Updated Code
at March 15, 2008 11:43 by peleteiro
Updated Code
require 'autotest/redgreen' # You need mpg321, so: # sudo port install mpg321 # Resources from: # http://www.thelucid.com/articles/2007/07/30/autotest-growl-fail-pass-smilies # http://www.fozworks.com/2007/7/28/autotest-sound-effects module Autotest::Growl def self.growl(title, msg, img) system "growlnotify -n autotest --image ~/.autotest_resources/#{img}.png -m #{msg.inspect} #{title}" end Autotest.add_hook :ran_command do |autotest| results = [autotest.results].flatten.join("\n") output = results.slice(/(\d+)\s+examples?,\s*(\d+)\s+failures?(,\s*(\d+)\s+pending)?/) if output =~ /[1-9]\sfailures?/ growl "FAIL", "#{output}", :fail elsif output =~ /[1-9]\spending?/ growl "PENDING", "#{output}", :pending else growl "PASS", "#{output}", :pass end end end module Autotest::Sound def self.play_sound(sound) system "mpg321 ~/.autotest_resources/#{sound}.mp3 > /dev/null 2>&1 &" end Autotest.add_hook :ran_command do |autotest| results = [autotest.results].flatten.join("\n") output = results.slice(/(\d+)\s+examples?,\s*(\d+)\s+failures?(,\s*(\d+)\s+pending)?/) if output =~ /[1-9]\sfailures?/ play_sound :fail elsif output =~ /[1-9]\spending?/ play_sound :pending else play_sound :pass end end end
Revision: 5554
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at March 15, 2008 11:42 by peleteiro
Initial Code
require 'autotest/redgreen' # You need mpg321, so: # sudo port install mpg321 # Resources from: # http://www.thelucid.com/articles/2007/07/30/autotest-growl-fail-pass-smilies # http://www.fozworks.com/2007/7/28/autotest-sound-effects module Autotest::Growl def self.growl(title, msg, img) system "growlnotify -n autotest --image ~/.autotest_resources/#{img}.png -m #{msg.inspect} #{title}" end Autotest.add_hook :ran_command do |autotest| results = [autotest.results].flatten.join("\n") output = results.slice(/(\d+)\s+examples?,\s*(\d+)\s+failures?(,\s*(\d+)\s+pending)?/) if output =~ /[1-9]\sfailures?/ growl "FAIL", "#{output}", :fail elsif output =~ /[1-9]\spending?/ growl "PENDING", "#{output}", :pending else growl "PASS", "#{output}", :pass end end end module Autotest::Sound def self.play_sound sound system "mpg321 ~/.autotest_resources/#{sound}.mp3 > /dev/null 2>&1 &" end Autotest.add_hook :ran_command do |autotest| results = [autotest.results].flatten.join("\n") output = results.slice(/(\d+)\s+examples?,\s*(\d+)\s+failures?(,\s*(\d+)\s+pending)?/) if output =~ /[1-9]\sfailures?/ play_sound :fail elsif output =~ /[1-9]\spending?/ play_sound :pending else play_sound :pass end end end
Initial URL
Initial Description
Initial Title
My .autotest file
Initial Tags
Initial Language
Ruby