diff options
Diffstat (limited to 'test/tc_mauve_source_list.rb')
-rw-r--r-- | test/tc_mauve_source_list.rb | 40 |
1 files changed, 33 insertions, 7 deletions
diff --git a/test/tc_mauve_source_list.rb b/test/tc_mauve_source_list.rb index bc68094..5b1aa70 100644 --- a/test/tc_mauve_source_list.rb +++ b/test/tc_mauve_source_list.rb @@ -3,12 +3,29 @@ $:.unshift "../lib/" require 'th_mauve' require 'mauve/source_list' require 'th_mauve_resolv' +require 'webmock' require 'pp' class TcMauveSourceList < Mauve::UnitTest + include Mauve + include WebMock::API + + def setup + super + setup_database + WebMock.disable_net_connect! + end + + def teardown + WebMock.reset! + WebMock.allow_net_connect! + teardown_database + super + end + def test_hostname_match - sl = Mauve::SourceList.new("test") + sl = SourceList.new("test") assert_equal("test", sl.label) list = %w(a.example.com b.example.com c.example.com) @@ -21,7 +38,7 @@ class TcMauveSourceList < Mauve::UnitTest end def test_regex_match - sl = Mauve::SourceList.new("test") + sl = SourceList.new("test") assert_nothing_raised{ sl += %w([a-c].example.com *.[d-f].example.com g.example.com) } @@ -35,7 +52,7 @@ class TcMauveSourceList < Mauve::UnitTest end def test_ip_match - sl = Mauve::SourceList.new("test") + sl = SourceList.new("test") assert_nothing_raised{ sl += %w(test-1.example.com 1.2.3.5 2001:1:2:3::5 1.2.4.0/24 2001:1:2:4::/64) } @@ -50,7 +67,7 @@ class TcMauveSourceList < Mauve::UnitTest end def test_uri_match - sl = Mauve::SourceList.new("test") + sl = SourceList.new("test") assert_nothing_raised { sl += "test-1.example.com" } @@ -64,15 +81,24 @@ class TcMauveSourceList < Mauve::UnitTest end def test_ip_crossmatch - sl = Mauve::SourceList.new("test") + sl = SourceList.new("test") assert_nothing_raised { sl += "test-1.example.com" } assert( sl.includes?("www.example.com"), "www.example.com not found in #{sl.list}" ) - sl = Mauve::SourceList.new("test") + sl = SourceList.new("test") assert_nothing_raised { sl += "2001::/3" } assert( sl.includes?("www2.example.com"), "www2.example.com not found in #{sl.list}" ) end -end + def test_remote_source_list + stub_request(:get, "http://localhost/network/monitor_ip/by_tag/Managed"). + to_return(:status => 200, :body => %w(1.2.3.4 1.2.3.5).join("\n")) + + sl = SourceList.new("test","http://localhost/network/monitor_ip/by_tag/Managed") + assert( sl.includes?("1.2.3.4"), "1.2.3.4 not found in #{sl.list}" ) + assert( sl.includes?("test-1.example.com"), "test-1.example.com not found in #{sl.list}" ) + end + +end |