[Buildroot] [PATCH 2/2] support/testing: add test for syslog-ng
Thomas Petazzoni
thomas.petazzoni at bootlin.com
Thu Apr 19 21:19:03 UTC 2018
Hello,
On Thu, 19 Apr 2018 16:14:18 -0300, Ricardo Martincoski wrote:
> From: Ricardo Martincoski <ricardo.martincoski at datacom.ind.br>
>
> Check:
> - the daemon is started;
> - a message is collected;
> - the daemon does not issue a warning message on startup.
>
> When the .conf file version does not match the package version a warning
> message shows up on serial on every boot. This message is generated by
> syslog-ng before it is running, so it is not logged to
> /var/log/messages. So in order to test the message is generated, restart
> the server. It makes the message appears on /var/log/messages (since the
> server is already running) where its existence can be easily tested
> using grep.
>
> Signed-off-by: Ricardo Martincoski <ricardo.martincoski at datacom.ind.br>
Thanks, I've applied. Some comments/suggestions below, though.
> + def test_run(self):
> + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio")
> + self.emulator.boot(arch="armv5", kernel="builtin", options=["-initrd", cpio_file])
> + self.emulator.login()
> +
> + cmd = "grep syslog-ng /var/log/messages | grep starting"
Why a double grep, and not a single grep like:
grep "syslog-ng.*starting"
or some better regexp ?
> + _, exit_code = self.emulator.run(cmd)
> + self.assertEqual(exit_code, 0)
> +
> + cmd = "logger my-message;"
> + cmd += "sleep 1;"
> + cmd += "grep my-message /var/log/messages"
Maybe && between each command would be better ?
> + _, exit_code = self.emulator.run(cmd)
> + self.assertEqual(exit_code, 0)
> +
> + cmd = "syslog-ng-ctl reload;"
> + cmd += "sleep 1;"
> + cmd += "grep syslog-ng /var/log/messages | grep -i warning"
Ditto single grep command ?
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com
More information about the buildroot
mailing list