summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2006-11-13 08:40:35 +0000
committerluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2006-11-13 08:40:35 +0000
commit5d2f95475d558197a56674cb641fa5def8f16065 (patch)
treebebcad12ac2296764f926ef6194d2d6b7fb5003d /test
parentf8b9e866082794e5d7fb0082ebf4df24823b2053 (diff)
downloadpuppet-5d2f95475d558197a56674cb641fa5def8f16065.tar.gz
puppet-5d2f95475d558197a56674cb641fa5def8f16065.tar.xz
puppet-5d2f95475d558197a56674cb641fa5def8f16065.zip
Fixes to the test system, and a couple of small fixes to the main code. Also, disabled the "port" type, because I cannot seem to model it correctly.
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1875 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'test')
-rwxr-xr-xtest/types/host.rb15
-rwxr-xr-xtest/types/mount.rb22
-rwxr-xr-xtest/types/port.rb283
-rwxr-xr-xtest/types/sshkey.rb49
4 files changed, 199 insertions, 170 deletions
diff --git a/test/types/host.rb b/test/types/host.rb
index 3c9d28434..a68e46020 100755
--- a/test/types/host.rb
+++ b/test/types/host.rb
@@ -23,12 +23,14 @@ class TestHost < Test::Unit::TestCase
cleanup do @hosttype.defaultprovider = nil end
- @default_file = @provider.default_target
- cleanup do
- @provider.default_target = @default_file
+ if @provider.respond_to?(:default_target=)
+ @default_file = @provider.default_target
+ cleanup do
+ @provider.default_target = @default_file
+ end
+ @target = tempfile()
+ @provider.default_target = @target
end
- @target = tempfile()
- @provider.default_target = @target
end
def mkhost
@@ -62,6 +64,8 @@ class TestHost < Test::Unit::TestCase
assert_equal(0, count, "Found hosts in empty file somehow")
end
+ # Darwin will actually write to netinfo here.
+ if Facter.value(:operatingsystem) != "Darwin" or Process.uid == 0
def test_simplehost
host = nil
@@ -105,6 +109,7 @@ class TestHost < Test::Unit::TestCase
assert_equal(%w{madstop kirby yayness}, host.is(:alias))
end
+ end
def test_aliasisstate
assert_equal(:state, @hosttype.attrtype(:alias))
diff --git a/test/types/mount.rb b/test/types/mount.rb
index 5a5a5da85..999599457 100755
--- a/test/types/mount.rb
+++ b/test/types/mount.rb
@@ -66,7 +66,7 @@ class TestMounts < Test::Unit::TestCase
def teardown
Puppet.type(:mount).clear
- @realprovider.clear
+ #@realprovider.clear
Puppet::Type.type(:mount).defaultprovider = nil
super
end
@@ -156,6 +156,8 @@ class TestMounts < Test::Unit::TestCase
assert(obj.provider.mounted?, "Object is not mounted")
end
+ # Darwin doesn't put its mount table into netinfo
+ unless Facter.value(:operatingsystem) == "Darwin"
def test_list
list = nil
assert(@mount.respond_to?(:list),
@@ -180,8 +182,11 @@ class TestMounts < Test::Unit::TestCase
assert(root.is(:device), "Device was not set")
assert(root.state(:device).value, "Device was not returned by value method")
end
+ end
# Make sure we actually remove the object from the file and such.
+ # Darwin will actually write to netinfo here.
+ if Facter.value(:operatingsystem) != "Darwin" or Process.uid == 0
def test_removal
# Reset the provider so that we're using the real thing
@mount.defaultprovider = nil
@@ -189,13 +194,15 @@ class TestMounts < Test::Unit::TestCase
provider = @mount.defaultprovider
assert(provider, "Could not retrieve default provider")
- file = provider.default_target
- assert(FileTest.exists?(file),
- "FSTab %s does not exist" % file)
+ if provider.respond_to?(:default_target)
+ file = provider.default_target
+ assert(FileTest.exists?(file),
+ "FSTab %s does not exist" % file)
- # Now switch to ram, so we're just doing this there, not really on disk.
- provider.filetype = :ram
- #provider.target_object(file).write text
+ # Now switch to ram, so we're just doing this there, not really on disk.
+ provider.filetype = :ram
+ #provider.target_object(file).write text
+ end
mount = mkmount
@@ -213,6 +220,7 @@ class TestMounts < Test::Unit::TestCase
assert(! list.find { |r| r[:name] == mount[:name] },
"Mount was not actually removed")
end
+ end
end
# $Id$
diff --git a/test/types/port.rb b/test/types/port.rb
index 7a809bddd..a6bc449ca 100755
--- a/test/types/port.rb
+++ b/test/types/port.rb
@@ -2,145 +2,148 @@
$:.unshift("../lib").unshift("../../lib") if __FILE__ =~ /\.rb$/
-require 'puppettest'
-require 'puppet'
-require 'test/unit'
-require 'facter'
-
-class TestPort < Test::Unit::TestCase
- include PuppetTest
-
- def setup
- super
- @porttype = Puppet.type(:port)
-
- @provider = @porttype.defaultprovider
-
- # Make sure they aren't using something funky like netinfo
- unless @provider.name == :parsed
- @porttype.defaultprovider = @porttype.provider(:parsed)
- end
-
- cleanup do @porttype.defaultprovider = nil end
-
- oldpath = @provider.path
- cleanup do
- @provider.path = oldpath
- end
- @provider.path = tempfile()
- end
-
- def mkport
- port = nil
-
- if defined? @pcount
- @pcount += 1
- else
- @pcount = 1
- end
- assert_nothing_raised {
- port = Puppet.type(:port).create(
- :name => "puppet%s" % @pcount,
- :number => "813%s" % @pcount,
- :protocols => "tcp",
- :description => "The port that Puppet runs on",
- :alias => "coolness%s" % @pcount
- )
- }
-
- return port
- end
-
- def test_list
- assert_nothing_raised {
- Puppet.type(:port).list
- }
-
- count = 0
- @porttype.each do |h|
- count += 1
- end
-
- assert_equal(0, count, "Found hosts in empty file somehow")
-
- dns = @porttype["domain"]
- assert(dns, "Did not retrieve dns service")
- end
- def test_simpleport
- host = nil
-
- port = mkport
-
- assert_apply(port)
- assert_nothing_raised {
- port.retrieve
- }
-
- assert(port.exists?, "Port did not get created")
- end
-
- def test_moddingport
- port = nil
- port = mkport
-
- assert_events([:port_created], port)
-
- port.retrieve
-
- port[:protocols] = %w{tcp udp}
-
- assert_events([:port_changed], port)
- end
-
- def test_multivalues
- port = mkport
- assert_raise(Puppet::Error) {
- port[:protocols] = "udp tcp"
- }
- assert_raise(Puppet::Error) {
- port[:alias] = "puppetmasterd yayness"
- }
- end
-
- def test_removal
- port = mkport()
- assert_nothing_raised {
- port[:ensure] = :present
- }
- assert_events([:port_created], port)
- assert_events([], port)
-
- assert(port.exists?, "port was not created")
- assert_nothing_raised {
- port[:ensure] = :absent
- }
-
- assert_events([:port_removed], port)
- assert(! port.exists?, "port was not removed")
- assert_events([], port)
- end
-
- def test_addingstates
- port = mkport()
- assert_events([:port_created], port)
-
- port.delete(:alias)
- assert(! port.state(:alias))
- assert_events([:port_changed], port)
-
- assert_nothing_raised {
- port.retrieve
- }
-
- assert_equal(:present, port.is(:ensure))
-
- assert_equal(:absent, port.is(:alias))
-
- port[:alias] = "yaytest"
- assert_events([:port_changed], port)
- port.retrieve
- assert(port.state(:alias).is == ["yaytest"])
- end
-end
+#require 'puppettest'
+#require 'puppet'
+#require 'test/unit'
+#require 'facter'
+#
+#class TestPort < Test::Unit::TestCase
+# include PuppetTest
+#
+# def setup
+# super
+# @porttype = Puppet.type(:port)
+#
+# @provider = @porttype.defaultprovider
+#
+# # Make sure they aren't using something funky like netinfo
+# unless @provider.name == :parsed
+# @porttype.defaultprovider = @porttype.provider(:parsed)
+# end
+#
+# cleanup do @porttype.defaultprovider = nil end
+#
+# if @provider.respond_to?(:default_target)
+# oldpath = @provider.default_target
+# cleanup do
+# @provider.default_target = oldpath
+# end
+# @provider.default_target = tempfile()
+# end
+# end
+#
+# def mkport
+# port = nil
+#
+# if defined? @pcount
+# @pcount += 1
+# else
+# @pcount = 1
+# end
+# assert_nothing_raised {
+# port = Puppet.type(:port).create(
+# :name => "puppet%s" % @pcount,
+# :number => "813%s" % @pcount,
+# :protocols => "tcp",
+# :description => "The port that Puppet runs on",
+# :alias => "coolness%s" % @pcount
+# )
+# }
+#
+# return port
+# end
+#
+# def test_list
+# assert_nothing_raised {
+# Puppet.type(:port).list
+# }
+#
+# count = 0
+# @porttype.each do |h|
+# count += 1
+# end
+#
+# assert_equal(0, count, "Found hosts in empty file somehow")
+#
+# dns = @porttype["domain"]
+# assert(dns, "Did not retrieve dns service")
+# end
+#
+# def test_simpleport
+# host = nil
+#
+# port = mkport
+#
+# assert_apply(port)
+# assert_nothing_raised {
+# port.retrieve
+# }
+#
+# assert(port.provider.exists?, "Port did not get created")
+# end
+#
+# def test_moddingport
+# port = nil
+# port = mkport
+#
+# assert_events([:port_created], port)
+#
+# port.retrieve
+#
+# port[:protocols] = %w{tcp udp}
+#
+# assert_events([:port_changed], port)
+# end
+#
+# def test_multivalues
+# port = mkport
+# assert_raise(Puppet::Error) {
+# port[:protocols] = "udp tcp"
+# }
+# assert_raise(Puppet::Error) {
+# port[:alias] = "puppetmasterd yayness"
+# }
+# end
+#
+# def test_removal
+# port = mkport()
+# assert_nothing_raised {
+# port[:ensure] = :present
+# }
+# assert_events([:port_created], port)
+# assert_events([], port)
+#
+# assert(port.provider.exists?, "port was not created")
+# assert_nothing_raised {
+# port[:ensure] = :absent
+# }
+#
+# assert_events([:port_removed], port)
+# assert(! port.provider.exists?, "port was not removed")
+# assert_events([], port)
+# end
+#
+# def test_addingstates
+# port = mkport()
+# assert_events([:port_created], port)
+#
+# port.delete(:alias)
+# assert(! port.state(:alias))
+# assert_events([:port_changed], port)
+#
+# assert_nothing_raised {
+# port.retrieve
+# }
+#
+# assert_equal(:present, port.is(:ensure))
+#
+# assert_equal(:absent, port.is(:alias))
+#
+# port[:alias] = "yaytest"
+# assert_events([:port_changed], port)
+# port.retrieve
+# assert(port.state(:alias).is == ["yaytest"])
+# end
+#end
# $Id$
diff --git a/test/types/sshkey.rb b/test/types/sshkey.rb
index 1a25c4cd0..d4e8c59a5 100755
--- a/test/types/sshkey.rb
+++ b/test/types/sshkey.rb
@@ -23,11 +23,20 @@ class TestSSHKey < Test::Unit::TestCase
cleanup do @sshkeytype.defaultprovider = nil end
- oldpath = @provider.path
- cleanup do
- @provider.path = oldpath
+ if @provider.respond_to?(:default_target)
+ oldpath = @provider.default_target
+ cleanup do
+ @provider.default_target = oldpath
+ end
+ @provider.default_target = tempfile()
+ end
+ end
+
+ def teardown
+ super
+ if @provider.respond_to?(:clear)
+ @provider.clear
end
- @provider.path = tempfile()
end
def mkkey
@@ -51,23 +60,25 @@ class TestSSHKey < Test::Unit::TestCase
return key
end
- def test_simplekey
+ def test_list
assert_nothing_raised {
- Puppet.type(:sshkey).defaultprovider.retrieve
+ Puppet.type(:sshkey).defaultprovider.list
+ }
- count = 0
- @sshkeytype.each do |h|
- count += 1
- end
+ count = 0
+ @sshkeytype.each do |h|
+ count += 1
+ end
- assert_equal(0, count, "Found sshkeys in empty file somehow")
- }
+ assert_equal(0, count, "Found sshkeys in empty file somehow")
+ end
+ def test_simplekey
key = mkkey
assert_apply(key)
- assert(key.exists?, "Key did not get created")
+ assert(key.provider.exists?, "Key did not get created")
end
def test_moddingkey
@@ -111,13 +122,13 @@ class TestSSHKey < Test::Unit::TestCase
}
assert_events([:sshkey_created], sshkey)
- assert(sshkey.exists?, "key was not created")
+ assert(sshkey.provider.exists?, "key was not created")
assert_nothing_raised {
sshkey[:ensure] = :absent
}
- assert_events([:sshkey_removed], sshkey)
- assert(! sshkey.exists?, "Key was not deleted")
+ assert_events([:sshkey_deleted], sshkey)
+ assert(! sshkey.provider.exists?, "Key was not deleted")
assert_events([], sshkey)
end
@@ -142,14 +153,16 @@ class TestSSHKey < Test::Unit::TestCase
# Verify we can retrieve that info
assert_nothing_raised("Could not retrieve after second write") {
+ newkey.provider.class.prefetch
newkey.retrieve
}
# And verify that we have data for everything
names.each { |name|
- key = Puppet.type(:sshkey)[name] || Puppet.type(:sshkey).create(:name => name)
+ key = Puppet.type(:sshkey)[name] ||
+ Puppet.type(:sshkey).create(:name => name)
assert(key, "Could not retrieve key for %s" % name)
- assert(key.exists?, "key %s is missing" % name)
+ assert(key.provider.exists?, "key %s is missing" % name)
}
end
end