summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorLuke Kanies <luke@madstop.com>2005-04-19 20:38:04 +0000
committerLuke Kanies <luke@madstop.com>2005-04-19 20:38:04 +0000
commit6cd71f8ac2b7de261b6750e2f480e57f90c43346 (patch)
treed89af2102d877276ab708ff65e96df80a64212b1 /test
parent737876563918bd7d3f48cc60e56efcbe79173368 (diff)
downloadpuppet-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.rb63
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