blob: 1b74e8aac604eb024de77138b551906d0cdfefb0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
#!/usr/bin/env ruby
$:.unshift("../lib").unshift("../../lib") if __FILE__ =~ /\.rb$/
require 'etc'
require 'puppet/type'
require 'puppettest'
class TestPackageProvider < Test::Unit::TestCase
include PuppetTest
def setup
super
@provider = nil
assert_nothing_raised {
@provider = Puppet::Type.type(:package).defaultprovider
}
assert(@provider, "Could not find default package provider")
assert(@provider.name != :fake, "Got a fake provider")
end
def test_nothing
end
if Facter["operatingsystem"].value == "Solaris" and Puppet::SUIDManager.uid == 0
if Puppet.type(:package).provider(:blastwave).suitable?
# FIXME The packaging crap needs to be rewritten to support testing
# multiple package types on the same platform.
def test_list_blastwave
pkgs = nil
assert_nothing_raised {
pkgs = Puppet::Type.type(:package).provider(:blastwave).list
}
pkgs.each do |pkg|
if pkg[:name] =~ /^CSW/
assert_equal(:blastwave, pkg[:provider],
"Type was not set correctly")
end
end
end
def test_install_blastwave
pkg = nil
name = "cabextract"
model = fakemodel(:package, name)
assert_nothing_raised {
pkg = Puppet::Type.type(:package).provider(:blastwave).new(model)
}
if hash = pkg.query and hash[:ensure] != :absent
p hash
$stderr.puts "Cannot test pkg installation; %s is already installed" %
name
return
end
assert_nothing_raised {
pkg.install
}
hash = nil
assert(hash = pkg.query,
"package did not install")
assert(hash[:ensure] != :absent,
"package did not install")
latest = nil
assert_nothing_raised {
latest = pkg.latest
}
assert(latest, "Could not find latest package version")
assert_nothing_raised {
pkg.uninstall
}
end
else
$stderr.puts "No pkg-get scripting; skipping blastwave tests"
end
end
end
# $Id$
|