dnl ENVTEST(NAME,KW,ENV,OUT) m4_pushdef([ENVTEST], [AT_SETUP([$1]) AT_KEYWORDS([env $2]) AT_CHECK([ PIES_XFAIL_CHECK PIES_CONTROL_INIT cat > envtest.conf <<_EOT component envtest { env { $3 } command "$abs_builddir/envtest -clone"; chdir $PWD; stdout file "$PWD/log"; return-code 0 { action disable; exec "$abs_top_builddir/src/piesctl --url unix:///$PWD/pies.ctl --no-netrc shutdown"; } } _EOT to 5 \ envtest -exec \ $abs_top_builddir/src/pies --foreground --stderr \ --config-file control.conf --config-file envtest.conf --debug 1 2>errlog cat log ], [0], [$4]) AT_CLEANUP]) dnl ############################# dnl Start tests dnl ############################# AT_BANNER([Environment statement]) ENVTEST([clear],[clear],[clear;],[]) ENVTEST([keep],[keep],[keep "LC_*";], [LC_ALL="C" LC_CTYPE="C" LC_MESSAGES="C" LC_NUMERIC="C" ]) ENVTEST([set],[set],[set "FOO=bar";], [FOO="bar" HOME="/home/user" LC_ALL="C" LC_CTYPE="C" LC_MESSAGES="C" LC_NUMERIC="C" LOGIN="user" PATH="/usr/local/bin:/usr/bin:/bin" PIES_INSTANCE="pies" PWD="/home" USER="user" ]) ENVTEST([unset],[unset],[unset "LC_*"; unset PWD;], [HOME="/home/user" LOGIN="user" PATH="/usr/local/bin:/usr/bin:/bin" PIES_INSTANCE="pies" USER="user" ]) m4_popdef([ENVTEST]) # ############################## # Legacy syntax # ############################## AT_BANNER([env: legacy syntax]) m4_pushdef([ENVTEST], [AT_SETUP([$1]) AT_KEYWORDS([env $2]) AT_CHECK([ PIES_XFAIL_CHECK PIES_CONTROL_INIT cat > envtest.conf <<_EOT component envtest { env $3; command "$abs_builddir/envtest -clone"; chdir $PWD; stdout file "$PWD/log"; return-code 0 { action disable; exec "$abs_top_builddir/src/piesctl --url unix:///$PWD/pies.ctl --no-netrc shutdown"; } } _EOT to 5 \ envtest -exec \ $abs_top_builddir/src/pies --foreground --stderr \ --config-file control.conf --config-file envtest.conf --debug 1 2>errlog cat log ], [0], [$4]) AT_CLEANUP]) ENVTEST([clear],[clear],[-],[]) ENVTEST([keep],[keep],[- USER LOGIN], [LOGIN="user" USER="user" ]) ENVTEST([set],[set],["FOO=bar" "BAR=bar"], [BAR="bar" FOO="bar" HOME="/home/user" LC_ALL="C" LC_CTYPE="C" LC_MESSAGES="C" LC_NUMERIC="C" LOGIN="user" PATH="/usr/local/bin:/usr/bin:/bin" PIES_INSTANCE="pies" PWD="/home" USER="user" ]) ENVTEST([unset],[unset],["-LC_NUMERIC" "-LC_CTYPE" "-LC_MESSAGES"], [HOME="/home/user" LC_ALL="C" LOGIN="user" PATH="/usr/local/bin:/usr/bin:/bin" PIES_INSTANCE="pies" PWD="/home" USER="user" ])