rsyslog/tests/rscript_ruleset_call_indirect-invld.sh
Rainer Gerhards 69ef6e329b fix bad bash coding style and disable shellcheck false positives
Also now permit interactivly running tests without explicitly setting
$srcdir. This now works if we are inside ./tests and fails, as before,
when we are in a different directory.

Detected by shellcheck via CodeFactor.io
2018-10-23 13:27:37 +02:00

33 lines
772 B
Bash
Executable File

#!/bin/bash
# added 2016-12-11 by rgerhards
# This file is part of the rsyslog project, released under ASL 2.0
. ${srcdir:=.}/diag.sh init
generate_conf
add_conf '
template(name="outfmt" type="list") {
property(name="msg" field.delimiter="58" field.number="2")
constant(value="\n")
}
ruleset(name="rs") {
action(type="omfile" file="./'"${RSYSLOG2_OUT_LOG}"'" template="outfmt")
}
if $msg contains "msgnum" then
call_indirect "does-not-exist";
else
action(type="omfile" file=`echo $RSYSLOG_OUT_LOG`)
'
startup
injectmsg 0 5
shutdown_when_empty
wait_shutdown
grep "error.*does-not-exist" $RSYSLOG_OUT_LOG > /dev/null
if [ $? -ne 0 ]; then
echo
echo "FAIL: expected error message not found. $RSYSLOG_OUT_LOG is:"
cat $RSYSLOG_OUT_LOG
error_exit 1
fi
exit_test