rsyslog/tests/timegenerated-uxtimestamp-invld.sh
Rainer Gerhards 2ba3c8ddde
testbench: modernize testbench plumbing
changes some of the test commands to use bash functions
includes some small bug fixes to tests where bugs were
previously not seen due to different plumbing.
2018-07-23 17:26:34 +02:00

87 lines
2.2 KiB
Bash
Executable File

#!/bin/bash
# test many concurrent tcp connections
# addd 2016-03-02 by RGerhards, released under ASL 2.0
# the key point of this test is that we do not abort and
# instead provide the defined return value (0)
# requires faketime
echo \[timegenerated-uxtimestamp-invld\]: check invalid dates with uxtimestamp format
. $srcdir/diag.sh init
. $srcdir/faketime_common.sh
export TZ=UTC+00:00
generate_conf
add_conf '
$ModLoad ../plugins/imtcp/.libs/imtcp
$InputTCPServerRun 13514
template(name="outfmt" type="string"
string="%timegenerated:::date-unixtimestamp%\n")
:msg, contains, "msgnum:" action(type="omfile" template="outfmt"
file="rsyslog.out.log")
'
echo "***SUBTEST: check 1800-01-01"
rm -f rsyslog.out.log # do cleanup of previous subtest
FAKETIME='1800-01-01 00:00:00' startup
. $srcdir/diag.sh tcpflood -m1
shutdown_when_empty
wait_shutdown
echo "0" | cmp - rsyslog.out.log
if [ ! $? -eq 0 ]; then
echo "invalid timestamps generated, rsyslog.out.log is:"
cat rsyslog.out.log
date -d @`cat rsyslog.out.log`
exit 1
fi;
echo "***SUBTEST: check 1960-01-01"
rm -f rsyslog.out.log # do cleanup of previous subtest
FAKETIME='1960-01-01 00:00:00' startup
. $srcdir/diag.sh tcpflood -m1
shutdown_when_empty
wait_shutdown
echo "0" | cmp - rsyslog.out.log
if [ ! $? -eq 0 ]; then
echo "invalid timestamps generated, rsyslog.out.log is:"
cat rsyslog.out.log
date -d @`cat rsyslog.out.log`
exit 1
fi;
echo "***SUBTEST: check 2101-01-01"
rm -f rsyslog.out.log # do cleanup of previous subtest
FAKETIME='2101-01-01 00:00:00' startup
. $srcdir/diag.sh tcpflood -m1
shutdown_when_empty
wait_shutdown
echo "0" | cmp - rsyslog.out.log
if [ ! $? -eq 0 ]; then
echo "invalid timestamps generated, rsyslog.out.log is:"
cat rsyslog.out.log
date -d @`cat rsyslog.out.log`
exit 1
fi;
echo "***SUBTEST: check 2500-01-01"
rm -f rsyslog.out.log # do cleanup of previous subtest
FAKETIME='2500-01-01 00:00:00' startup
. $srcdir/diag.sh tcpflood -m1
shutdown_when_empty
wait_shutdown
echo "0" | cmp - rsyslog.out.log
if [ ! $? -eq 0 ]; then
echo "invalid timestamps generated, rsyslog.out.log is:"
cat rsyslog.out.log
date -d @`cat rsyslog.out.log`
exit 1
fi;
exit_test