rsyslog/tests/timegenerated-utc.sh
Rainer Gerhards 0fa3e9249d testbench: invalid init sequence
this causes all libfaketime tests to fail, due to unset
environment variable (which is set in init). Previously
this was no problem because the environment variable did
not exist in any case. Thus the problem went undetected
for a long time.
2017-05-09 17:21:20 +02:00

43 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
# addd 2016-03-22 by RGerhards, released under ASL 2.0
# NOTE: faketime does NOT properly support subseconds,
# so we must ensure we do not use them. Actually, what we
# see is uninitialized data value in tv_usec, which goes
# away as soon as we do not run under faketime control.
# FOR THE SAME REASON, there is NO VALGRIND EQUIVALENT
# of this test, as valgrind would abort with reports
# of faketime.
. $srcdir/diag.sh init
. $srcdir/faketime_common.sh
export TZ=TEST+02:00
. $srcdir/diag.sh generate-conf
. $srcdir/diag.sh add-conf '
module(load="../plugins/imtcp/.libs/imtcp")
input(type="imtcp" port="13514")
template(name="outfmt" type="list") {
property(name="timegenerated" date.inUTC="on")
constant(value="\n")
}
:msg, contains, "msgnum:" action(type="omfile" template="outfmt"
file="rsyslog.out.log")
'
echo "***SUBTEST: check 2016-03-01"
rm -f rsyslog.out.log # do cleanup of previous subtest
FAKETIME='2016-03-01 12:00:00' $srcdir/diag.sh startup
. $srcdir/diag.sh tcpflood -m1
. $srcdir/diag.sh shutdown-when-empty
. $srcdir/diag.sh wait-shutdown
echo "Mar 1 14:00:00" | cmp rsyslog.out.log
if [ ! $? -eq 0 ]; then
echo "invalid timestamps generated, rsyslog.out.log is:"
cat rsyslog.out.log
exit 1
fi;
. $srcdir/diag.sh exit