aboutsummaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/runtime_cases/syslog.py
diff options
context:
space:
mode:
Diffstat (limited to 'meta/lib/oeqa/runtime_cases/syslog.py')
-rw-r--r--meta/lib/oeqa/runtime_cases/syslog.py52
1 files changed, 52 insertions, 0 deletions
diff --git a/meta/lib/oeqa/runtime_cases/syslog.py b/meta/lib/oeqa/runtime_cases/syslog.py
new file mode 100644
index 0000000000..8f550329e7
--- /dev/null
+++ b/meta/lib/oeqa/runtime_cases/syslog.py
@@ -0,0 +1,52 @@
+import unittest
+from oeqa.oetest import oeRuntimeTest, skipModule
+from oeqa.utils.decorators import *
+
+def setUpModule():
+ if not (oeRuntimeTest.hasPackage("busybox-syslog") or oeRuntimeTest.hasPackage("sysklogd")):
+ skipModule("No syslog package in image")
+
+class SyslogTest(oeRuntimeTest):
+
+ @testcase(201)
+ def test_syslog_running(self):
+ (status,output) = self.target.run(oeRuntimeTest.pscmd + ' | grep -i [s]yslogd')
+ self.assertEqual(status, 0, msg="no syslogd process, ps output: %s" % self.target.run(oeRuntimeTest.pscmd)[1])
+
+class SyslogTestConfig(oeRuntimeTest):
+
+ @testcase(1149)
+ @skipUnlessPassed("test_syslog_running")
+ def test_syslog_logger(self):
+ (status, output) = self.target.run('logger foobar')
+ self.assertEqual(status, 0, msg="Can't log into syslog. Output: %s " % output)
+
+ (status, output) = self.target.run('grep foobar /var/log/messages')
+ if status != 0:
+ if oeRuntimeTest.tc.d.getVar("VIRTUAL-RUNTIME_init_manager", "") == "systemd":
+ (status, output) = self.target.run('journalctl -o cat | grep foobar')
+ else:
+ (status, output) = self.target.run('logread | grep foobar')
+ self.assertEqual(status, 0, msg="Test log string not found in /var/log/messages or logread. Output: %s " % output)
+
+ @testcase(1150)
+ @skipUnlessPassed("test_syslog_running")
+ def test_syslog_restart(self):
+ if "systemd" != oeRuntimeTest.tc.d.getVar("VIRTUAL-RUNTIME_init_manager", False):
+ (status,output) = self.target.run('/etc/init.d/syslog restart')
+ else:
+ (status,output) = self.target.run('systemctl restart syslog.service')
+
+ @testcase(202)
+ @skipUnlessPassed("test_syslog_restart")
+ @skipUnlessPassed("test_syslog_logger")
+ @unittest.skipIf("systemd" == oeRuntimeTest.tc.d.getVar("VIRTUAL-RUNTIME_init_manager", False), "Not appropiate for systemd image")
+ @unittest.skipIf(oeRuntimeTest.hasPackage("sysklogd") or not oeRuntimeTest.hasPackage("busybox"), "Non-busybox syslog")
+ def test_syslog_startup_config(self):
+ self.target.run('echo "LOGFILE=/var/log/test" >> /etc/syslog-startup.conf')
+ (status,output) = self.target.run('/etc/init.d/syslog restart')
+ self.assertEqual(status, 0, msg="Could not restart syslog service. Status and output: %s and %s" % (status,output))
+ (status,output) = self.target.run('logger foobar && grep foobar /var/log/test')
+ self.assertEqual(status, 0, msg="Test log string not found. Output: %s " % output)
+ self.target.run("sed -i 's#LOGFILE=/var/log/test##' /etc/syslog-startup.conf")
+ self.target.run('/etc/init.d/syslog restart')