diff options
author | David Tran <unsignedzero@gmail.com> | 2014-03-18 19:54:05 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2014-03-19 20:55:57 +0100 |
commit | 512477b175288a429aaf4071dc9fe94f17f0e4ee (patch) | |
tree | 972f6fa1820571ca7bd2e257f020dd1e1caacb7e /t/t1510-repo-setup.sh | |
parent | Git 1.9.0 (diff) | |
download | git-512477b175288a429aaf4071dc9fe94f17f0e4ee.tar.xz git-512477b175288a429aaf4071dc9fe94f17f0e4ee.zip |
tests: use "env" to run commands with temporary env-var settings
Ordinarily, we would say "VAR=VAL command" to execute a tested
command with environment variable(s) set only for that command.
This however does not work if 'command' is a shell function (most
notably 'test_must_fail'); the result of the assignment is retained
and affects later commands.
To avoid this, we used to assign and export environment variables
and run such a test in a subshell, like so:
(
VAR=VAL && export VAR &&
test_must_fail git command to be tested
)
But with "env" utility, we should be able to say:
test_must_fail env VAR=VAL git command to be tested
which is much shorter and easier to read.
Signed-off-by: David Tran <unsignedzero@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t1510-repo-setup.sh')
-rwxr-xr-x | t/t1510-repo-setup.sh | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/t/t1510-repo-setup.sh b/t/t1510-repo-setup.sh index cf2ee7885a..e1b2a99f10 100755 --- a/t/t1510-repo-setup.sh +++ b/t/t1510-repo-setup.sh @@ -777,9 +777,7 @@ test_expect_success '#30: core.worktree and core.bare conflict (gitfile version) setup_repo 30 "$here/30" gitfile true && ( cd 30 && - GIT_DIR=.git && - export GIT_DIR && - test_must_fail git symbolic-ref HEAD 2>result + test_must_fail env GIT_DIR=.git git symbolic-ref HEAD 2>result ) && grep "core.bare and core.worktree" 30/result ' |