diff options
author | Luke Kanies <luke@madstop.com> | 2005-04-19 20:38:04 +0000 |
---|---|---|
committer | Luke Kanies <luke@madstop.com> | 2005-04-19 20:38:04 +0000 |
commit | 6cd71f8ac2b7de261b6750e2f480e57f90c43346 (patch) | |
tree | d89af2102d877276ab708ff65e96df80a64212b1 /test | |
parent | 737876563918bd7d3f48cc60e56efcbe79173368 (diff) | |
download | puppet-6cd71f8ac2b7de261b6750e2f480e57f90c43346.tar.gz puppet-6cd71f8ac2b7de261b6750e2f480e57f90c43346.tar.xz puppet-6cd71f8ac2b7de261b6750e2f480e57f90c43346.zip |
filetypes now support multiple record types, and newlines can be escaped
git-svn-id: https://reductivelabs.com/svn/puppet/library/trunk@196 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'test')
-rw-r--r-- | test/types/tc_filetype.rb | 63 |
1 files changed, 52 insertions, 11 deletions
diff --git a/test/types/tc_filetype.rb b/test/types/tc_filetype.rb index a8226275d..64e62c749 100644 --- a/test/types/tc_filetype.rb +++ b/test/types/tc_filetype.rb @@ -24,23 +24,35 @@ class TestFileType < Test::Unit::TestCase @passwdtype.addrecord( :name => "user", :splitchar => ":", - :fields => %w{name password uid gid gcos home shell}, - :namevar => "name" + :fields => %w{name password uid gid gcos home shell} ) } end - @passwdtype = Blink::Type::FileType["passwd"] - if @passwdtype.nil? + @syslogtype = Blink::Type::FileType["syslog"] + if @syslogtype.nil? assert_nothing_raised() { - @passwdtype = Blink::Type::FileType.newtype( - :name => "passwd" + @syslogtype = Blink::Type::FileType.newtype( + :escapednewlines => true, + :name => "syslog" ) - @passwdtype.addrecord( - :name => "user", - :splitchar => ":", - :fields => %w{name password uid gid gcos home shell}, - :namevar => "name" + @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 @@ -120,4 +132,33 @@ class TestFileType < Test::Unit::TestCase Kernel.system("rm /tmp/oparsepasswd") end + + def test_syslog_nochange + file = nil + type = nil + assert_nothing_raised() { + file = @syslogtype.new("/etc/syslog.conf") + } + assert_nothing_raised() { + file.retrieve + } + + assert(file.insync?) + + contents = "" + ::File.open("/etc/syslog.conf") { |ofile| + ofile.each { |line| + contents += line + } + } + + file.each { |record| + puts "%s [%s]" % [record.class,record] + } + #assert_equal( + # contents, + # file.to_s + #) + + end end |