t5520: replace test -{n,z} with test-lib functions

When wrapping a git command in a command substitution within another
command, we throw away the git command's exit code. In case the git
command fails, we would like to know about it rather than the failure
being silent. Extract git commands so that their exit codes are not
lost.

Instead of using `test -n` or `test -z`, replace them respectively with
invocations of test_file_not_empty() and test_must_be_empty() so that we
get better debugging information in the case of a failure.

Signed-off-by: Denton Liu <liu.denton@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Denton Liu 2019-11-12 15:08:02 -08:00 committed by Junio C Hamano
parent 3037d3db90
commit 979f8891cc

View File

@ -206,15 +206,18 @@ test_expect_success 'fail if the index has unresolved entries' '
test_when_finished "git checkout -f copy && git branch -D third" &&
test "$(cat file)" = file &&
test_commit modified2 file &&
test -z "$(git ls-files -u)" &&
git ls-files -u >unmerged &&
test_must_be_empty unmerged &&
test_must_fail git pull . second &&
test -n "$(git ls-files -u)" &&
git ls-files -u >unmerged &&
test_file_not_empty unmerged &&
cp file expected &&
test_must_fail git pull . second 2>err &&
test_i18ngrep "Pulling is not possible because you have unmerged files." err &&
test_cmp expected file &&
git add file &&
test -z "$(git ls-files -u)" &&
git ls-files -u >unmerged &&
test_must_be_empty unmerged &&
test_must_fail git pull . second 2>err &&
test_i18ngrep "You have not concluded your merge" err &&
test_cmp expected file
@ -667,7 +670,8 @@ test_expect_success 'git pull --rebase detects upstreamed changes' '
(
cd dst &&
git pull --rebase &&
test -z "$(git ls-files -u)"
git ls-files -u >untracked &&
test_must_be_empty untracked
)
'