aboutsummaryrefslogtreecommitdiff
path: root/test/tc_mauve_source_list.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/tc_mauve_source_list.rb')
-rw-r--r--test/tc_mauve_source_list.rb40
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