test: use --numstat instead of --stat in "git stash show" tests

git's diff --stat output is intended for human consumption and
since v1.7.9.2~13 (2012-02-01) varies by locale.  Add a test checking
that git stash show defaults to --stat and tweak the rest of the
"stash show" tests that showed a diffstat to use numstat.

This way, there are fewer tests to tweak if the diffstat format
changes again.  This also improves test coverage when running tests
with git configured not to write its output in the C locale (e.g.,
via GETTEXT_POISON=Yes).

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jonathan Nieder 2012-03-13 00:01:32 -05:00 committed by Junio C Hamano
parent 2593633f5a
commit 1145211456

View File

@ -432,7 +432,7 @@ test_expect_success 'stash branch - stashes on stack, stash-like argument' '
test $(git ls-files --modified | wc -l) -eq 1 test $(git ls-files --modified | wc -l) -eq 1
' '
test_expect_success 'stash show - stashes on stack, stash-like argument' ' test_expect_success 'stash show format defaults to --stat' '
git stash clear && git stash clear &&
test_when_finished "git reset --hard HEAD" && test_when_finished "git reset --hard HEAD" &&
git reset --hard && git reset --hard &&
@ -450,6 +450,21 @@ test_expect_success 'stash show - stashes on stack, stash-like argument' '
test_i18ncmp expected actual test_i18ncmp expected actual
' '
test_expect_success 'stash show - stashes on stack, stash-like argument' '
git stash clear &&
test_when_finished "git reset --hard HEAD" &&
git reset --hard &&
echo foo >> file &&
git stash &&
test_when_finished "git stash drop" &&
echo bar >> file &&
STASH_ID=$(git stash create) &&
git reset --hard &&
echo "1 0 file" >expected &&
git stash show --numstat ${STASH_ID} >actual &&
test_cmp expected actual
'
test_expect_success 'stash show -p - stashes on stack, stash-like argument' ' test_expect_success 'stash show -p - stashes on stack, stash-like argument' '
git stash clear && git stash clear &&
test_when_finished "git reset --hard HEAD" && test_when_finished "git reset --hard HEAD" &&
@ -480,12 +495,9 @@ test_expect_success 'stash show - no stashes on stack, stash-like argument' '
echo foo >> file && echo foo >> file &&
STASH_ID=$(git stash create) && STASH_ID=$(git stash create) &&
git reset --hard && git reset --hard &&
cat >expected <<-EOF && echo "1 0 file" >expected &&
file | 1 + git stash show --numstat ${STASH_ID} >actual &&
1 file changed, 1 insertion(+) test_cmp expected actual
EOF
git stash show ${STASH_ID} >actual &&
test_i18ncmp expected actual
' '
test_expect_success 'stash show -p - no stashes on stack, stash-like argument' ' test_expect_success 'stash show -p - no stashes on stack, stash-like argument' '