diff options
| author | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2006-04-03 23:37:12 +0000 |
|---|---|---|
| committer | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2006-04-03 23:37:12 +0000 |
| commit | 3327dc809cb645a2e0d81e892c21cf9872f38712 (patch) | |
| tree | bca91363b534ee61a7efe7c8a4783cbbaba6971b /test | |
| parent | 97d5ab656d5d05678eb37800452fb8ac7b615da2 (diff) | |
Adding netinfo type and some tests
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1061 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'test')
| -rwxr-xr-x | test/other/filetype.rb | 96 | ||||
| -rw-r--r-- | test/types/filetype.rb | 160 |
2 files changed, 96 insertions, 160 deletions
diff --git a/test/other/filetype.rb b/test/other/filetype.rb new file mode 100755 index 000000000..b965ade39 --- /dev/null +++ b/test/other/filetype.rb @@ -0,0 +1,96 @@ +if __FILE__ == $0 + $:.unshift '..' + $:.unshift '../../lib' + $puppetbase = "../.." +end + +require 'puppet' +require 'puppet/filetype' +require 'puppettest' +require 'test/unit' + +class TestFileType < Test::Unit::TestCase + include TestPuppet + + def test_flat + obj = nil + path = tempfile() + type = nil + + assert_nothing_raised { + type = Puppet::FileType.filetype(:flat) + } + + assert(type, "Could not retrieve flat filetype") + + assert_nothing_raised { + obj = type.new(path) + } + + text = "This is some text\n" + + newtext = nil + assert_nothing_raised { + newtext = obj.read + } + + # The base class doesn't allow a return of nil + assert_equal("", newtext, "Somehow got some text") + + assert_nothing_raised { + obj.write(text) + } + assert_nothing_raised { + newtext = obj.read + } + + assert_equal(text, newtext, "Text was changed somehow") + + File.open(path, "w") { |f| f.puts "someyayness" } + + text = File.read(path) + assert_nothing_raised { + newtext = obj.read + } + + assert_equal(text, newtext, "Text was changed somehow") + end + + if Facter["operatingsystem"].value == "Darwin" + def test_ninfotoarray + obj = nil + type = nil + + assert_nothing_raised { + type = Puppet::FileType.filetype(:netinfo) + } + + assert(type, "Could not retrieve netinfo filetype") + %w{users groups aliases}.each do |map| + assert_nothing_raised { + obj = type.new(map) + } + + assert_nothing_raised("could not read map %s" % map) { + obj.read + } + + array = nil + + assert_nothing_raised { + array = obj.to_array + } + + assert_instance_of(Array, array) + + array.each do |record| + assert_instance_of(Hash, record) + assert(record.length != 0) + p record + end + end + end + end +end + +# $Id$ diff --git a/test/types/filetype.rb b/test/types/filetype.rb deleted file mode 100644 index 7c5e4583c..000000000 --- a/test/types/filetype.rb +++ /dev/null @@ -1,160 +0,0 @@ -if __FILE__ == $0 - $:.unshift '..' - $:.unshift '../../lib' - $puppetbase = "../../../../language/trunk" -end - -require 'puppet' -#require 'puppet/type/typegen/filetype' -#require 'puppet/type/typegen/filerecord' -require 'test/unit' - -#class TestFileType < Test::Unit::TestCase -class TestFileType - def disabled_setup - - @passwdtype = Puppet.type(:filetype)["passwd"] - if @passwdtype.nil? - assert_nothing_raised() { - @passwdtype = Puppet.type(:filetype).createtype( - :name => "passwd" - ) - @passwdtype.addrecord( - :name => "user", - :splitchar => ":", - :fields => %w{name password uid gid gcos home shell} - ) - } - end - - @syslogtype = Puppet.type(:filetype)["syslog"] - if @syslogtype.nil? - assert_nothing_raised() { - @syslogtype = Puppet.type(:filetype).createtype( - :escapednewlines => true, - :name => "syslog" - ) - @syslogtype.addrecord( - :name => "data", - :regex => %r{^([^#\s]+)\s+(\S+)$}, - :joinchar => "\t", - :fields => %w{logs dest} - ) - @syslogtype.addrecord( - :name => "comment", - :regex => %r{^(#.*)$}, - :joinchar => "", # not really necessary... - :fields => %w{comment} - ) - @syslogtype.addrecord( - :name => "blank", - :regex => %r{^(\s*)$}, - :joinchar => "", # not really necessary... - :fields => %w{blank} - ) - } - end - - end - - def disabled_test_passwd1_nochange - file = nil - type = nil - assert_nothing_raised() { - file = @passwdtype.new("/etc/passwd") - } - assert_nothing_raised() { - file.retrieve - } - - assert(file.insync?) - - contents = "" - ::File.open("/etc/passwd") { |ofile| - ofile.each { |line| - contents += line - } - } - - assert_equal( - contents, - file.to_s - ) - - end - - def disabled_test_passwd2_change - file = nil - type = nil - newfile = tempfile() - Kernel.system("cp /etc/passwd #{newfile}") - assert_nothing_raised() { - file = @passwdtype.new(newfile) - } - assert_nothing_raised() { - file.retrieve - } - - assert(file.insync?) - - assert_nothing_raised() { - file.add("user") { |obj| - obj["name"] = "yaytest" - obj["password"] = "x" - obj["uid"] = "10000" - obj["gid"] = "10000" - obj["home"] = "/home/yaytest" - obj["gcos"] = "The Yaytest" - obj["shell"] = "/bin/sh" - } - } - - assert(!file.insync?) - - assert_nothing_raised() { - file.evaluate - } - - assert(file.insync?) - - assert_nothing_raised() { - file.delete("bin") - } - - assert(!file.insync?) - - assert_nothing_raised() { - file.evaluate - } - - assert(file.insync?) - end - - def disabled_test_syslog_nochange - file = nil - type = nil - syslog = File.join($puppetbase, "examples/root/etc/debian-syslog.conf") - assert_nothing_raised() { - file = @syslogtype.new(syslog) - } - assert_nothing_raised() { - file.retrieve - } - - assert(file.insync?) - - contents = "" - ::File.open(syslog) { |ofile| - ofile.each { |line| - contents += line - } - } - #assert_equal( - # contents, - # file.to_s - #) - - end -end - -# $Id$ |
