diff options
author | Brian Gernhardt <brian@gernhardtsoftware.com> | 2010-08-23 22:37:24 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-08-24 09:33:09 -0700 |
commit | 25641fcdb0d31130fadd649861035cc7db859cf7 (patch) | |
tree | cdb11e4e667f493556a8039c9fab12f5bdbc1d6b /t/t7610-mergetool.sh | |
parent | bc38219f50ba9228945fba8e900d636f15082f16 (diff) | |
download | git-25641fcdb0d31130fadd649861035cc7db859cf7.tar.gz |
t7610: cd inside subshell instead of around
Instead of using `cd dir && (...) && cd..` use `(cd dir && ...)`
This ensures that the test doesn't get caught in the subdirectory if
there is an error in the subshell.
Signed-off-by: Brian Gernhardt <brian@gernhardtsoftware.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t7610-mergetool.sh')
-rwxr-xr-x | t/t7610-mergetool.sh | 49 |
1 files changed, 26 insertions, 23 deletions
diff --git a/t/t7610-mergetool.sh b/t/t7610-mergetool.sh index f5a7bf47e9..3bd74042ef 100755 --- a/t/t7610-mergetool.sh +++ b/t/t7610-mergetool.sh @@ -68,22 +68,24 @@ test_expect_success 'mergetool crlf' ' ' test_expect_success 'mergetool in subdir' ' - git checkout -b test3 branch1 - cd subdir && ( - test_must_fail git merge master >/dev/null 2>&1 && - ( yes "" | git mergetool file3 >/dev/null 2>&1 ) && - test "$(cat file3)" = "master new sub") && - cd .. + git checkout -b test3 branch1 && + ( + cd subdir && + test_must_fail git merge master >/dev/null 2>&1 && + ( yes "" | git mergetool file3 >/dev/null 2>&1 ) && + test "$(cat file3)" = "master new sub" + ) ' test_expect_success 'mergetool on file in parent dir' ' - cd subdir && ( - ( yes "" | git mergetool ../file1 >/dev/null 2>&1 ) && - ( yes "" | git mergetool ../file2 >/dev/null 2>&1 ) && - test "$(cat ../file1)" = "master updated" && - test "$(cat ../file2)" = "master new" && - git commit -m "branch1 resolved with mergetool - subdir") && - cd .. + ( + cd subdir && + ( yes "" | git mergetool ../file1 >/dev/null 2>&1 ) && + ( yes "" | git mergetool ../file2 >/dev/null 2>&1 ) && + test "$(cat ../file1)" = "master updated" && + test "$(cat ../file2)" = "master new" && + git commit -m "branch1 resolved with mergetool - subdir" + ) ' test_expect_success 'mergetool skips autoresolved' ' @@ -96,16 +98,17 @@ test_expect_success 'mergetool skips autoresolved' ' ' test_expect_success 'mergetool merges all from subdir' ' - cd subdir && ( - git config rerere.enabled false && - test_must_fail git merge master && - git mergetool --no-prompt && - test "$(cat ../file1)" = "master updated" && - test "$(cat ../file2)" = "master new" && - test "$(cat file3)" = "master new sub" && - git add ../file1 ../file2 file3 && - git commit -m "branch2 resolved by mergetool from subdir") && - cd .. + ( + cd subdir && + git config rerere.enabled false && + test_must_fail git merge master && + git mergetool --no-prompt && + test "$(cat ../file1)" = "master updated" && + test "$(cat ../file2)" = "master new" && + test "$(cat file3)" = "master new sub" && + git add ../file1 ../file2 file3 && + git commit -m "branch2 resolved by mergetool from subdir" + ) ' test_done |