| 1 | # -*- ruby -*- |
|---|
| 2 | |
|---|
| 3 | # require 'autotest/autoupdate' |
|---|
| 4 | # require 'autotest/camping' |
|---|
| 5 | # require 'autotest/cctray' |
|---|
| 6 | # require 'autotest/emacs' |
|---|
| 7 | # require 'autotest/fixtures' |
|---|
| 8 | #require 'ruby-growl' |
|---|
| 9 | #require 'autotest/growl' |
|---|
| 10 | # require 'autotest/heckle' |
|---|
| 11 | # require 'autotest/html_report' |
|---|
| 12 | # require 'autotest/kdenotify' |
|---|
| 13 | # require 'autotest/menu' |
|---|
| 14 | # require 'autotest/migrate' |
|---|
| 15 | # require 'autotest/notify' |
|---|
| 16 | # require 'autotest/pretty' |
|---|
| 17 | #require 'autotest/redgreen' |
|---|
| 18 | #require 'autotest/screen' |
|---|
| 19 | # require 'autotest/shame' |
|---|
| 20 | # require 'autotest/snarl' |
|---|
| 21 | # require 'autotest/timestamp' |
|---|
| 22 | |
|---|
| 23 | # Autotest::AutoUpdate.sleep_time = 60 |
|---|
| 24 | # Autotest::AutoUpdate.update_cmd = 'svn up' |
|---|
| 25 | # Autotest::Emacs.client_cmd = 'emacsclient -e' |
|---|
| 26 | # Autotest::Heckle.flags << '-t test/**/*.rb' |
|---|
| 27 | # Autotest::Heckle.klasses << 'MyClass' |
|---|
| 28 | # Autotest::Shame.chat_app = :adium |
|---|
| 29 | |
|---|
| 30 | #Autotest::HOOKS.delete(:interrupt) |
|---|
| 31 | #Autotest::Screen.statusline = %q[|%c %m/%d|%w %=] |
|---|
| 32 | |
|---|
| 33 | #class Autotest::Screen |
|---|
| 34 | # SCREEN_COLOR[:green] = 'gw' |
|---|
| 35 | # SCREEN_COLOR[:yellow] = 'yk' |
|---|
| 36 | # |
|---|
| 37 | # Autotest.add_hook :run_command do |at| |
|---|
| 38 | # message 'Running' if execute? |
|---|
| 39 | # end |
|---|
| 40 | # |
|---|
| 41 | # Autotest.add_hook :quit do |at| |
|---|
| 42 | # clear if execute? |
|---|
| 43 | # end |
|---|
| 44 | # |
|---|
| 45 | # Autotest.add_hook :ran_command do |at| |
|---|
| 46 | # return unless execute? |
|---|
| 47 | # results = [at.results].flatten.join("¥n") |
|---|
| 48 | # output = results.slice(/(¥d+)¥sexamples?,¥s*(¥d+)¥s.*failures?(?:,¥s*(¥d+)¥s.*pendings?)?/) |
|---|
| 49 | # if output |
|---|
| 50 | # ex,fail,pend = $~.captures.map {|e| e.to_i} |
|---|
| 51 | # if 0 < fail |
|---|
| 52 | # message "FAIL #{ex}ex, F:#{fail} ", :red |
|---|
| 53 | # elsif 0 < pend |
|---|
| 54 | # message "Pend #{ex}ex, F:#{fail} P:#{pend}", :yellow |
|---|
| 55 | # else |
|---|
| 56 | # message "All Green #{ex}ex", :green |
|---|
| 57 | # end |
|---|
| 58 | # end |
|---|
| 59 | # end |
|---|
| 60 | #end |
|---|
| 61 | |
|---|
| 62 | module Autotest::Growl |
|---|
| 63 | def self.growl(title, msg, img) |
|---|
| 64 | system "growlnotify -n autotest #{title} -m '#{msg}' --image #{img} " |
|---|
| 65 | end |
|---|
| 66 | |
|---|
| 67 | Autotest.add_hook :ran_command do |at| |
|---|
| 68 | results = [at.results].flatten.flatten.join("\n") |
|---|
| 69 | output = results.slice(/(\d+)\s+examples?,\s*(\d+)\s+failures?(,\s*(\d+)\s+not implemented)?/) |
|---|
| 70 | if output |
|---|
| 71 | if $~[2].to_i > 0 |
|---|
| 72 | growl "Tests Failed", "#{output}", "~/.rails_fail.png" |
|---|
| 73 | else |
|---|
| 74 | growl "ALL GREEN", "#{output}", "~/.rails_ok.png" |
|---|
| 75 | end |
|---|
| 76 | end |
|---|
| 77 | end |
|---|
| 78 | end |
|---|