Currently, lazy prereq tests are run in a subshell which communicates
only the exit code to the outer world.

Run it as a subcommand so that variables can be exported to the test
environment.

Signed-off-by: Michael J Gruber <g...@drmicha.warpmail.net>
---
I don't think this has any adverse side effects, but I'm begging for
another set of eyeballs to have a look. (Test suite passes, of course.)

 t/test-lib-functions.sh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh
index 8889ba5..e587902 100644
--- a/t/test-lib-functions.sh
+++ b/t/test-lib-functions.sh
@@ -246,13 +246,15 @@ test_lazy_prereq () {
 test_run_lazy_prereq_ () {
        script='
 mkdir -p "$TRASH_DIRECTORY/prereq-test-dir" &&
-(
+{
        cd "$TRASH_DIRECTORY/prereq-test-dir" &&'"$2"'
-)'
+}'
        say >&3 "checking prerequisite: $1"
        say >&3 "$script"
+       orig_pwd="$(pwd)"
        test_eval_ "$script"
        eval_ret=$?
+       cd "$orig_pwd"
        rm -rf "$TRASH_DIRECTORY/prereq-test-dir"
        if test "$eval_ret" = 0; then
                say >&3 "prerequisite $1 ok"
-- 
1.8.0.rc2.304.g9f3ac5c

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to