blob: 29a10662b2e7f24bdf7207ada21108a50d169d10 (
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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
|
if __FILE__ == $0
if Dir.getwd =~ /test\/server$/
Dir.chdir("..")
end
$:.unshift '../lib'
$puppetbase = ".."
end
require 'puppet'
require 'puppet/server'
require 'puppet/client'
require 'test/unit'
require 'puppettest.rb'
class TestMaster < ServerTest
def teardown
super
print "\n\n\n\n" if Puppet[:debug]
end
# run through all of the existing test files and make sure everything
# works
def test_files
count = 0
textfiles { |file|
Puppet.debug("parsing %s" % file)
client = nil
master = nil
# create our master
assert_nothing_raised() {
# this is the default server setup
master = Puppet::Server::Master.new(
:File => file,
:Local => true
)
}
# and our client
assert_nothing_raised() {
client = Puppet::Client::MasterClient.new(
:Master => master
)
}
# pull our configuration a few times
assert_nothing_raised() {
client.getconfig
stopservices
Puppet::Type.allclear
}
assert_nothing_raised() {
client.getconfig
stopservices
Puppet::Type.allclear
}
assert_nothing_raised() {
client.getconfig
stopservices
Puppet::Type.allclear
}
# only test three files; that's plenty
if count > 3
break
end
count += 1
}
end
def test_defaultmanifest
textfiles { |file|
Puppet[:manifest] = file
client = nil
master = nil
assert_nothing_raised() {
# this is the default server setup
master = Puppet::Server::Master.new(
:File => file,
:Local => true
)
}
assert_nothing_raised() {
client = Puppet::Client::MasterClient.new(
:Master => master
)
}
# pull our configuration
assert_nothing_raised() {
client.getconfig
stopservices
Puppet::Type.allclear
}
break
}
end
def test_filereread
manifest = mktestmanifest()
file2 = @createdfile + "2"
client = master = nil
assert_nothing_raised() {
# this is the default server setup
master = Puppet::Server::Master.new(
:File => manifest,
:Local => true,
:FileTimeout => 0.5
)
}
assert_nothing_raised() {
client = Puppet::Client::MasterClient.new(
:Master => master
)
}
assert_nothing_raised {
client.getconfig
client.apply
}
assert(FileTest.exists?(@createdfile),
"Created file %s does not exist" % @createdfile)
sleep 1
Puppet::Type.allclear
File.open(manifest, "w") { |f|
f.puts "file { \"%s\": create => true }\n" % file2
}
assert_nothing_raised {
client.getconfig
client.apply
}
assert(FileTest.exists?(file2), "Second file %s does not exist" % file2)
end
end
# $Id$
|