summaryrefslogtreecommitdiffstats
path: root/test/executables/puppetmodule.rb
blob: fcd85f42ca2921821254f4a550ca4aa9daaf1530 (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
if __FILE__ == $0
    $:.unshift '../../lib'
    $:.unshift '..'
    $puppetbase = "../.."
end

require 'puppet'
require 'puppet/server'
require 'puppet/sslcertificates'
require 'test/unit'
require 'puppettest.rb'

$module = File.join($puppetbase, "ext", "module_puppet")

class TestPuppetModule < Test::Unit::TestCase
	include ExeTest

    def test_existence
        assert(FileTest.exists?($module), "Module does not exist")
    end

    def test_execution
        file = tempfile()

        createdfile = tempfile()

        File.open(file, "w") { |f|
            f.puts "class yaytest { file { \"#{createdfile}\": ensure => file } }"
        }

        output = nil
        cmd = $module
        cmd += " --verbose"
        #cmd += " --fqdn %s" % fqdn
        cmd += " --confdir %s" % Puppet[:confdir]
        cmd += " --vardir %s" % Puppet[:vardir]
        if Puppet[:debug]
            cmd += " --logdest %s" % "console"
            cmd += " --debug"
        else
            cmd += " --logdest %s" % "/dev/null"
        end

        ENV["CFALLCLASSES"] = "yaytest:all"

        assert_nothing_raised {
            system(cmd + " " + file)
        }
        assert($? == 0, "Puppet module exited with code %s" % $?.to_i)

        assert(FileTest.exists?(createdfile), "Failed to create config'ed file")
    end
end

# $Id$