summaryrefslogtreecommitdiffstats
path: root/test/network
diff options
context:
space:
mode:
authorLuke Kanies <luke@madstop.com>2009-02-06 17:27:44 -0600
committerLuke Kanies <luke@madstop.com>2009-02-06 18:08:43 -0600
commit08a5d492dd3545366a2850d568d87aad0ba884e6 (patch)
treed3e174eb3297ed1f0091b63809763c7f56cdfb00 /test/network
parentc7d178d04f324c010de1552083a954bb4b02217d (diff)
downloadpuppet-08a5d492dd3545366a2850d568d87aad0ba884e6.tar.gz
puppet-08a5d492dd3545366a2850d568d87aad0ba884e6.tar.xz
puppet-08a5d492dd3545366a2850d568d87aad0ba884e6.zip
Adding an Agent::Runner class.
This will eventually be used by puppetrun, but for now is just called by the old-school Runner handler. Signed-off-by: Luke Kanies <luke@madstop.com>
Diffstat (limited to 'test/network')
-rwxr-xr-xtest/network/handler/runner.rb64
1 files changed, 7 insertions, 57 deletions
diff --git a/test/network/handler/runner.rb b/test/network/handler/runner.rb
index 171458ffa..71d86fd9d 100755
--- a/test/network/handler/runner.rb
+++ b/test/network/handler/runner.rb
@@ -3,68 +3,18 @@
require File.dirname(__FILE__) + '/../../lib/puppettest'
require 'puppettest'
+require 'puppet/network/handler/runner'
class TestHandlerRunner < Test::Unit::TestCase
include PuppetTest
- def mkclient(code)
- master = nil
- client = nil
- Puppet[:code] = code
- # create our master
- assert_nothing_raised() {
- # this is the default server setup
- master = Puppet::Network::Handler.master.new(
- :Local => true
- )
- }
+ def test_it_calls_agent_runner
+ runner = mock 'runner'
+ Puppet::Agent::Runner.expects(:new).with(:tags => "mytags", :ignoreschedules => true, :background => false).returns runner
+ runner.expects(:run)
+ runner.expects(:status).returns "yay"
- # and our client
- assert_nothing_raised() {
- client = Puppet::Network::Client.master.new(
- :Master => master
- )
- }
- client
- end
-
- def setup
- super
- FileUtils.mkdir_p(Puppet[:statedir])
- Puppet[:ignoreschedules] = false
- # Okay, make our manifest
- file = tempfile()
- created = tempfile()
- # We specify the schedule here, because I was having problems with
- # using default schedules.
- @code = %{
- class yayness {
- schedule { "yayness": period => weekly }
- file { "#{created}": ensure => file, schedule => yayness }
- }
-
- include yayness
- }
-
- @client = mkclient(@code)
-
- @runner = Puppet::Network::Handler.runner.new
- end
-
- def test_runner_when_in_foreground
- @client.expects(:run).with(:tags => "mytags", :ignoreschedules => true)
-
- Process.expects(:newthread).never
-
- @runner.run("mytags", true, true)
- end
-
- def test_runner_when_in_background
- @client.expects(:run).with(:tags => "mytags", :ignoreschedules => true)
-
- Puppet.expects(:newthread).yields
-
- @runner.run("mytags", true, false)
+ assert_equal("yay", Puppet::Network::Handler.runner.new.run("mytags", true, true))
end
end