summaryrefslogtreecommitdiffstats
path: root/external/meta-security/lib/oeqa/runtime/cases/apparmor.py
diff options
context:
space:
mode:
Diffstat (limited to 'external/meta-security/lib/oeqa/runtime/cases/apparmor.py')
-rw-r--r--external/meta-security/lib/oeqa/runtime/cases/apparmor.py46
1 files changed, 46 insertions, 0 deletions
diff --git a/external/meta-security/lib/oeqa/runtime/cases/apparmor.py b/external/meta-security/lib/oeqa/runtime/cases/apparmor.py
new file mode 100644
index 00000000..b6a9537e
--- /dev/null
+++ b/external/meta-security/lib/oeqa/runtime/cases/apparmor.py
@@ -0,0 +1,46 @@
+# Copyright (C) 2019 Armin Kuster <akuster808@gmail.com>
+#
+import re
+
+from oeqa.runtime.case import OERuntimeTestCase
+from oeqa.core.decorator.depends import OETestDepends
+from oeqa.runtime.decorator.package import OEHasPackage
+
+
+class ApparmorTest(OERuntimeTestCase):
+
+ @OEHasPackage(['apparmor'])
+ @OETestDepends(['ssh.SSHTest.test_ssh'])
+ def test_apparmor_help(self):
+ status, output = self.target.run('aa-status --help')
+ msg = ('apparmor command does not work as expected. '
+ 'Status and output:%s and %s' % (status, output))
+ self.assertEqual(status, 0, msg = msg)
+
+ @OETestDepends(['apparmor.ApparmorTest.test_apparmor_help'])
+ def test_apparmor_aa_status(self):
+ status, output = self.target.run('aa-status')
+ match = re.search('apparmor module is loaded.', output)
+ if not match:
+ msg = ('aa-status failed. '
+ 'Status and output:%s and %s' % (status, output))
+ self.assertEqual(status, 0, msg = msg)
+
+ @OETestDepends(['apparmor.ApparmorTest.test_apparmor_aa_status'])
+ def test_apparmor_aa_complain(self):
+ status, output = self.target.run('aa-complain /etc/apparmor.d/*')
+ match = re.search('apparmor module is loaded.', output)
+ if not match:
+ msg = ('aa-complain failed. '
+ 'Status and output:%s and %s' % (status, output))
+ self.assertEqual(status, 0, msg = msg)
+
+ @OETestDepends(['apparmor.ApparmorTest.test_apparmor_aa_complain'])
+ def test_apparmor_aa_enforce(self):
+ status, output = self.target.run('aa-enforce /etc/apparmor.d/*')
+ match = re.search('apparmor module is loaded.', output)
+ if not match:
+ msg = ('aa-enforce failed. '
+ 'Status and output:%s and %s' % (status, output))
+ self.assertEqual(status, 0, msg = msg)
+