mirror of
https://github.com/inspec/inspec
synced 2024-11-10 23:24:18 +00:00
07dc5e3192
3 files left to go, and they're behaving oddly so I'm leaving them out in this pass. Looks like 21 deprecations left. Signed-off-by: Ryan Davis <zenspider@chef.io>
45 lines
1.1 KiB
Ruby
45 lines
1.1 KiB
Ruby
require "helper"
|
|
require "inspec/utils/parser"
|
|
|
|
describe PasswdParser do
|
|
let(:parser) { Class.new { include PasswdParser }.new }
|
|
|
|
describe "#parse_passwd" do
|
|
it "parses nil content" do
|
|
_(parser.parse_passwd(nil)).must_equal([])
|
|
end
|
|
|
|
it "parses an empty passwd line" do
|
|
_(parser.parse_passwd("")).must_equal([])
|
|
end
|
|
|
|
it "parses a comment line" do
|
|
content = <<~EOF
|
|
# This is a comment
|
|
# this is another comment
|
|
root:x:0:0:root:/root:/bin/sh
|
|
EOF
|
|
info = [{ "user" => "root",
|
|
"password" => "x",
|
|
"uid" => "0",
|
|
"gid" => "0",
|
|
"desc" => "root",
|
|
"home" => "/root",
|
|
"shell" => "/bin/sh" }]
|
|
_(parser.parse_passwd(content)).must_equal(info)
|
|
end
|
|
|
|
it "parses a valid passwd line" do
|
|
info = [{
|
|
"user" => "root",
|
|
"password" => "x",
|
|
"uid" => "0",
|
|
"gid" => "0",
|
|
"desc" => "root",
|
|
"home" => "/root",
|
|
"shell" => "/bin/sh",
|
|
}]
|
|
_(parser.parse_passwd("root:x:0:0:root:/root:/bin/sh")).must_equal(info)
|
|
end
|
|
end
|
|
end
|