3
3
require File.dirname(__FILE__) + '/../../lib/puppettest'
6
require 'puppet/network/handler/runner'
7
8
class TestHandlerRunner < Test::Unit::TestCase
15
assert_nothing_raised() {
16
# this is the default server setup
17
master = Puppet::Network::Handler.master.new(
23
assert_nothing_raised() {
24
client = Puppet::Network::Client.master.new(
34
FileUtils.mkdir_p(Puppet[:statedir])
35
Puppet[:ignoreschedules] = false
36
# Okay, make our manifest
39
# We specify the schedule here, because I was having problems with
40
# using default schedules.
43
schedule { "yayness": period => weekly }
44
file { "#{created}": ensure => file, schedule => yayness }
50
@client = mkclient(@code)
52
@runner = Puppet::Network::Handler.runner.new
55
def test_runner_when_in_foreground
56
@client.expects(:run).with(:tags => "mytags", :ignoreschedules => true)
58
Process.expects(:newthread).never
60
@runner.run("mytags", true, true)
63
def test_runner_when_in_background
64
@client.expects(:run).with(:tags => "mytags", :ignoreschedules => true)
66
Puppet.expects(:newthread).yields
68
@runner.run("mytags", true, false)
11
def test_it_calls_agent_runner
12
runner = mock 'runner'
13
Puppet::Agent::Runner.expects(:new).with(:tags => "mytags", :ignoreschedules => true, :background => false).returns runner
15
runner.expects(:status).returns "yay"
18
assert_equal("yay", Puppet::Network::Handler.runner.new.run("mytags", true, true))