diff options
| -rw-r--r-- | lib/custodian/alerts.rb | 1 | ||||
| -rw-r--r-- | lib/custodian/alerts/file.rb | 66 | ||||
| -rwxr-xr-x | t/test-custodian-alertfactory.rb | 2 | 
3 files changed, 68 insertions, 1 deletions
| diff --git a/lib/custodian/alerts.rb b/lib/custodian/alerts.rb index 74d021b..eb12215 100644 --- a/lib/custodian/alerts.rb +++ b/lib/custodian/alerts.rb @@ -14,6 +14,7 @@ require 'custodian/alertfactory'  #  # The individual alert-types.  # +require 'custodian/alerts/file'  require 'custodian/alerts/mauve'  require 'custodian/alerts/smtp' diff --git a/lib/custodian/alerts/file.rb b/lib/custodian/alerts/file.rb new file mode 100644 index 0000000..12bf907 --- /dev/null +++ b/lib/custodian/alerts/file.rb @@ -0,0 +1,66 @@ + + + +# +#  The SMTP-alerter. +# +module Custodian + +  module Alerter + +    class AlertFile < AlertFactory + +      # +      # The test this alerter cares about +      # +      attr_reader :test + + + +      # +      # Constructor - save the test-object away. +      # +      def initialize( obj ) +        @test = obj +      end + + + +      # +      # Record a raise event for the given test. +      # +      def raise +        write_message( "RAISE: #{test.target} failed #{test.get_type}-test - #{test.error()}" ) +      end + + + +      # +      # Record a clear event for the given test. +      # +      def clear +        write_message( "CLEAR: #{test.target} failed #{test.get_type}-test" ) +      end + + +      # +      # Write the actual message to our target. +      # +      def write_message( msg ) +        file = File.open(@target, "a") +        file.puts( "#{Time.now} #{msg}" ) +        file.close + +      end + + + + +      register_alert_type "file" + + + + +    end +  end +end diff --git a/t/test-custodian-alertfactory.rb b/t/test-custodian-alertfactory.rb index 602ef5f..ede6aa7 100755 --- a/t/test-custodian-alertfactory.rb +++ b/t/test-custodian-alertfactory.rb @@ -30,7 +30,7 @@ class TestAlertFactory < Test::Unit::TestCase      #      # Ensure we can create each of the two alert types we care about      # -    %w( mauve smtp ).each do |name| +    %w( file mauve smtp ).each do |name|        #        #  Use the factory to instantiate the correct object. | 
