mirror of
https://github.com/git/git.git
synced 2024-12-12 11:24:02 +08:00
7f733de04e
In order to selectively skip tests, the environment variable GIT_SKIP_TESTS can be set like this: $ GIT_SKIP_TESTS='t1301 t4150.18' make test That is, its value can contain only the test script numbers, but not the full script name. Therefore, it is important that the test scripts are uniquely numbered. This makes it so. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
81 lines
2.1 KiB
Bash
Executable File
81 lines
2.1 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
test_description='Return value of diffs'
|
|
|
|
. ./test-lib.sh
|
|
|
|
test_expect_success 'setup' '
|
|
echo 1 >a &&
|
|
git add . &&
|
|
git commit -m first &&
|
|
echo 2 >b &&
|
|
git add . &&
|
|
git commit -a -m second
|
|
'
|
|
|
|
test_expect_success 'git diff-tree HEAD^ HEAD' '
|
|
git diff-tree --quiet HEAD^ HEAD >cnt
|
|
test $? = 1 && test $(wc -l <cnt) = 0
|
|
'
|
|
test_expect_success 'git diff-tree HEAD^ HEAD -- a' '
|
|
git diff-tree --quiet HEAD^ HEAD -- a >cnt
|
|
test $? = 0 && test $(wc -l <cnt) = 0
|
|
'
|
|
test_expect_success 'git diff-tree HEAD^ HEAD -- b' '
|
|
git diff-tree --quiet HEAD^ HEAD -- b >cnt
|
|
test $? = 1 && test $(wc -l <cnt) = 0
|
|
'
|
|
# this diff outputs one line: sha1 of the given head
|
|
test_expect_success 'echo HEAD | git diff-tree --stdin' '
|
|
echo $(git rev-parse HEAD) | git diff-tree --quiet --stdin >cnt
|
|
test $? = 1 && test $(wc -l <cnt) = 1
|
|
'
|
|
test_expect_success 'git diff-tree HEAD HEAD' '
|
|
git diff-tree --quiet HEAD HEAD >cnt
|
|
test $? = 0 && test $(wc -l <cnt) = 0
|
|
'
|
|
test_expect_success 'git diff-files' '
|
|
git diff-files --quiet >cnt
|
|
test $? = 0 && test $(wc -l <cnt) = 0
|
|
'
|
|
test_expect_success 'git diff-index --cached HEAD' '
|
|
git diff-index --quiet --cached HEAD >cnt
|
|
test $? = 0 && test $(wc -l <cnt) = 0
|
|
'
|
|
test_expect_success 'git diff-index --cached HEAD^' '
|
|
git diff-index --quiet --cached HEAD^ >cnt
|
|
test $? = 1 && test $(wc -l <cnt) = 0
|
|
'
|
|
test_expect_success 'git diff-index --cached HEAD^' '
|
|
echo text >>b &&
|
|
echo 3 >c &&
|
|
git add . && {
|
|
git diff-index --quiet --cached HEAD^ >cnt
|
|
test $? = 1 && test $(wc -l <cnt) = 0
|
|
}
|
|
'
|
|
test_expect_success 'git diff-tree -Stext HEAD^ HEAD -- b' '
|
|
git commit -m "text in b" && {
|
|
git diff-tree --quiet -Stext HEAD^ HEAD -- b >cnt
|
|
test $? = 1 && test $(wc -l <cnt) = 0
|
|
}
|
|
'
|
|
test_expect_success 'git diff-tree -Snot-found HEAD^ HEAD -- b' '
|
|
git diff-tree --quiet -Snot-found HEAD^ HEAD -- b >cnt
|
|
test $? = 0 && test $(wc -l <cnt) = 0
|
|
'
|
|
test_expect_success 'git diff-files' '
|
|
echo 3 >>c && {
|
|
git diff-files --quiet >cnt
|
|
test $? = 1 && test $(wc -l <cnt) = 0
|
|
}
|
|
'
|
|
test_expect_success 'git diff-index --cached HEAD' '
|
|
git update-index c && {
|
|
git diff-index --quiet --cached HEAD >cnt
|
|
test $? = 1 && test $(wc -l <cnt) = 0
|
|
}
|
|
'
|
|
|
|
test_done
|