82ebb0b6ec
Many scripts compare actual and expected output using "diff -u". This is nicer than "cmp" because the output shows how the two differ. However, not all versions of diff understand -u, leading to unnecessary test failure. This adds a test_cmp function to the test scripts and switches all "diff -u" invocations to use it. The function uses the contents of "$GIT_TEST_CMP" to compare its arguments; the default is "diff -u". On systems with a less-capable diff, you can do: GIT_TEST_CMP=cmp make test Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
53 lines
825 B
Bash
Executable File
53 lines
825 B
Bash
Executable File
#!/bin/sh
|
|
|
|
test_description='git ls-remote'
|
|
|
|
. ./test-lib.sh
|
|
|
|
test_expect_success setup '
|
|
|
|
>file &&
|
|
git add file &&
|
|
test_tick &&
|
|
git commit -m initial &&
|
|
git tag mark &&
|
|
git show-ref --tags -d | sed -e "s/ / /" >expected.tag &&
|
|
(
|
|
echo "$(git rev-parse HEAD) HEAD"
|
|
git show-ref -d | sed -e "s/ / /"
|
|
) >expected.all &&
|
|
|
|
git remote add self $(pwd)/.git
|
|
|
|
'
|
|
|
|
test_expect_success 'ls-remote --tags .git' '
|
|
|
|
git ls-remote --tags .git >actual &&
|
|
test_cmp expected.tag actual
|
|
|
|
'
|
|
|
|
test_expect_success 'ls-remote .git' '
|
|
|
|
git ls-remote .git >actual &&
|
|
test_cmp expected.all actual
|
|
|
|
'
|
|
|
|
test_expect_success 'ls-remote --tags self' '
|
|
|
|
git ls-remote --tags self >actual &&
|
|
test_cmp expected.tag actual
|
|
|
|
'
|
|
|
|
test_expect_success 'ls-remote self' '
|
|
|
|
git ls-remote self >actual &&
|
|
test_cmp expected.all actual
|
|
|
|
'
|
|
|
|
test_done
|