Sha256: 13bd03acec56115de06883eacef87df331a942d5271d63a6352e3b18906acf8c
Contents?: true
Size: 1.03 KB
Versions: 1
Compression:
Stored size: 1.03 KB
Contents
require 'riot' module RiotNotifier class Base < Riot::DotMatrixReporter def notify(color, msg) # overwrite me end def fail(desc, message) super say "#{desc}: #{message}".yellow notify(:red, "FAILURE: #{message}") end def error(desc, error) super say "#{desc}: #{error}".red notify(:red, "ERROR: #{error}") end def results(time_taken) super unless bad_results? notify(:green, "%d passes, %d failures, %d errors in %s seconds" % [passes, failures, errors, ("%0.6f" % time_taken)]) end end private def bad_results? failures + errors > 0 end end class RedgreenNotifier < Base attr_reader :path PATH = ENV['HOME'] + "/bin/notify_redgreen" def initialize(path = PATH) super() @path = path end def notify(color, msg) msg.gsub!(/</, '<') msg.gsub!(/"/, "\\\"") exec "#{@path} #{color} \"#{msg}\"" end def exec(*args) Kernel.system(*args) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
riot_notifier-0.0.2 | lib/riot_notifier.rb |