diff options
| author | Steve Kemp <steve@steve.org.uk> | 2012-11-14 20:09:00 +0000 | 
|---|---|---|
| committer | Steve Kemp <steve@steve.org.uk> | 2012-11-14 20:09:00 +0000 | 
| commit | a03eccc2f8a133f41d43d064c1b01152c6f6b99d (patch) | |
| tree | b34c0424fc9f8aeb1361730aab48caa1b7c9bbef /t | |
| parent | 578e3713d78353b4a9e8f36bc21d5b6ad29a4622 (diff) | |
  Added test of inside vs. outside of Bytemark network
Diffstat (limited to 't')
| -rwxr-xr-x | t/test-alerter.rb | 97 | 
1 files changed, 97 insertions, 0 deletions
| diff --git a/t/test-alerter.rb b/t/test-alerter.rb new file mode 100755 index 0000000..80ce44e --- /dev/null +++ b/t/test-alerter.rb @@ -0,0 +1,97 @@ +#!/usr/bin/ruby1.8 -I./lib/ -I../lib/ + + + +require 'test/unit' +require 'custodian/alerter' + + + +# +# Unit test for our alerting class +# +# This doesn't actually test the alerts, but it will +# test that we can successfully determine whether a +# destination is inside or outside the Bytemark network. +# +# +class TestAlerter < Test::Unit::TestCase + +  # +  # Create the test suite environment: NOP. +  # +  def setup +  end + +  # +  # Destroy the test suite environment: NOP. +  # +  def teardown +  end + + +  # +  # Ensure we can instantiate the object +  # +  def test_init + +    assert_nothing_raised do +      obj = Alerter.new( {} ) +      assert( obj ) +    end + +  end + + +  # +  #  Test location-detection. +  # +  def test_families + +    # +    #  Hash of hostnames and version of address. +    # +    to_test = { + +      # +      # Hosts inside the Bytemark network +      # +      "www.steve.org.uk"               => true, +      "ipv6.steve.org.uk"              => true, +      "http://www.steve.org.uk/"       => true, +      "http://ipv6.steve.org.uk"       => true, +      "canalrivertrust.org.uk"         => true, +      "http://canalrivertrust.org.uk/" => true, +      "http://canalrivertrust.org.uk"  => true, + +      # +      # Hosts outside the Bytemark network +      # +      "https://google.com/"     => false, +      "http://google.com/"      => false, +      "http://ipv6.google.com/" => false, +      "http://192.168.0.333/"   => false, +    } + + + +    to_test.each do |name,inside| + +      obj = Alerter.new( nil ) + +      text = obj.expand_inside_bytemark( name ) + +      if ( text =~ /is inside/ ) +        assert( inside == true ) +      end +      if ( text =~ /is not/ ) +        assert( inside == false ) +      end +    end +  end + + + + + +end | 
