Test_Semanage

Provides unit tests and examples for the Semanage lens.

Summary
Test_SemanageProvides unit tests and examples for the Semanage lens.
Augeas Variables
phony_conf
Augeas Tests
Semanage.lns
Semanage.lnsQuotes are OK in variables that do not begin with a quote
Semanage.lnsSupport empty values
Augeas Variables
conf
Augeas Tests
Semanage.lns

Augeas Variables

phony_conf

let phony_conf = "# this is a comment mykey = myvalue # eol comment anotherkey = another value "

Augeas Tests

Semanage.lns

test Semanage.lns get phony_conf = { "#comment" = "this is a comment" } { } { "mykey" = "myvalue" { "#comment" = "eol comment" } } { "anotherkey" = "another value" }

Semanage.lns

test Semanage.lns get "UserParameter=custom.vfs.dev.read.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$4}'\n" = { "UserParameter" = "custom.vfs.dev.read.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$4}'" }

Quotes are OK in variables that do not begin with a quote

Semanage.lns

test Semanage.lns get "foo =\n" = { "foo" }

Support empty values

Augeas Variables

conf

let conf = "

Augeas Tests

Semanage.lns

test Semanage.lns get conf = { "module-store" = "direct" } { "module-store" = "source" } { } { "#comment" = "policy-version = 19" } { } { "expand-check" = "0" } { } { "usepasswd" = "False" } { "bzip-small" = "true" } { "bzip-blocksize" = "5" } { "ignoredirs" = "/root" } { } { "@group" = "sefcontext_compile" { "path" = "/usr/sbin/sefcontext_compile" } { "args" = "-r $@" } { } } { } { "config" = "test" } { } { "@group" = "verify module" { "test" = "value" } }
Parses /etc/selinux/semanage.conf
let phony_conf = "# this is a comment mykey = myvalue # eol comment anotherkey = another value "
test Semanage.lns get phony_conf = { "#comment" = "this is a comment" } { } { "mykey" = "myvalue" { "#comment" = "eol comment" } } { "anotherkey" = "another value" }
let conf = "
Close