1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
# This file is part of Direvent testsuite. -*- Autotest -*-
# Copyright (C) 2013-2016 Sergey Poznyakoff
#
# Direvent is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3, or (at your option)
# any later version.
#
# Direvent is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Direvent. If not, see <http://www.gnu.org/licenses/>.
AT_SETUP([clear and modify])
AT_KEYWORDS([environ env03])
AT_DIREVENT_TEST([
debug 10;
syslog {
facility ${TESTSUITE_FACILITY:-local0};
tag direvent-test:write;
}
watcher {
path $cwd/dir;
event write;
command "$TESTDIR/envdump -s -f $outfile -k\$self_test_pid";
option (stdout,stderr);
environ (--, VAR1, "VAR2=baz", "FILE=\$file", "EVENT=\$genev_name");
}
],
[echo "to come to" >> dir/testfile],
[outfile=$cwd/dump
mkdir dir
cat > dir/testfile <<EOT
now is the
time for all
men
EOT
VAR1=foo
VAR2=bar
export VAR1 VAR2
],
[sed "s^$cwd^(CWD)^;s^$TESTDIR^(TESTDIR)^;s^\(DIREVENT_SYS.*\)=.*^\1=X^;/^argv\[[[0-9]]\]=-k/d;/DIREVENT_SELF_TEST_PID/d" $outfile
],
[0],
[# Dump of execution environment
cwd is (CWD)/dir
# Arguments
argv[[0]]=(TESTDIR)/envdump
argv[[1]]=-s
argv[[2]]=-f
argv[[3]]=(CWD)/dump
# Environment
EVENT=write
FILE=testfile
VAR1=foo
VAR2=baz
# End
])
AT_CLEANUP
|