зеркало из https://github.com/microsoft/git.git
Merge branch 'sg/test-must-be-empty'
Test fixes. * sg/test-must-be-empty: tests: use 'test_must_be_empty' instead of 'test_cmp <empty> <out>' tests: use 'test_must_be_empty' instead of 'test_cmp /dev/null <out>' tests: use 'test_must_be_empty' instead of 'test ! -s' tests: use 'test_must_be_empty' instead of '! test -s'
This commit is contained in:
Коммит
986c518107
|
@ -116,7 +116,7 @@ check_sub_test_lib_test () {
|
|||
name="$1" # stdin is the expected output from the test
|
||||
(
|
||||
cd "$name" &&
|
||||
! test -s err &&
|
||||
test_must_be_empty err &&
|
||||
sed -e 's/^> //' -e 's/Z$//' >expect &&
|
||||
test_cmp expect out
|
||||
)
|
||||
|
|
|
@ -167,9 +167,8 @@ test_expect_success 'reinit' '
|
|||
) &&
|
||||
test_i18ngrep "Initialized empty" again/out1 &&
|
||||
test_i18ngrep "Reinitialized existing" again/out2 &&
|
||||
>again/empty &&
|
||||
test_i18ncmp again/empty again/err1 &&
|
||||
test_i18ncmp again/empty again/err2
|
||||
test_must_be_empty again/err1 &&
|
||||
test_must_be_empty again/err2
|
||||
'
|
||||
|
||||
test_expect_success 'init with --template' '
|
||||
|
|
|
@ -208,9 +208,8 @@ test_expect_success 'attribute test: --all option' '
|
|||
'
|
||||
|
||||
test_expect_success 'attribute test: --cached option' '
|
||||
: >empty &&
|
||||
git check-attr --cached --stdin --all <stdin-all | sort >actual &&
|
||||
test_cmp empty actual &&
|
||||
test_must_be_empty actual &&
|
||||
git add .gitattributes a/.gitattributes a/b/.gitattributes &&
|
||||
git check-attr --cached --stdin --all <stdin-all | sort >actual &&
|
||||
test_cmp specified-all actual
|
||||
|
|
|
@ -320,22 +320,20 @@ test_expect_success \
|
|||
|
||||
test_expect_success \
|
||||
'spaces with newline at end should be replaced with empty string' '
|
||||
printf "" >expect &&
|
||||
|
||||
echo | git stripspace >actual &&
|
||||
test_cmp expect actual &&
|
||||
test_must_be_empty actual &&
|
||||
|
||||
echo "$sss" | git stripspace >actual &&
|
||||
test_cmp expect actual &&
|
||||
test_must_be_empty actual &&
|
||||
|
||||
echo "$sss$sss" | git stripspace >actual &&
|
||||
test_cmp expect actual &&
|
||||
test_must_be_empty actual &&
|
||||
|
||||
echo "$sss$sss$sss" | git stripspace >actual &&
|
||||
test_cmp expect actual &&
|
||||
test_must_be_empty actual &&
|
||||
|
||||
echo "$sss$sss$sss$sss" | git stripspace >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success \
|
||||
|
@ -349,19 +347,17 @@ test_expect_success \
|
|||
|
||||
test_expect_success \
|
||||
'spaces without newline at end should be replaced with empty string' '
|
||||
printf "" >expect &&
|
||||
|
||||
printf "" | git stripspace >actual &&
|
||||
test_cmp expect actual &&
|
||||
test_must_be_empty actual &&
|
||||
|
||||
printf "$sss$sss" | git stripspace >actual &&
|
||||
test_cmp expect actual &&
|
||||
test_must_be_empty actual &&
|
||||
|
||||
printf "$sss$sss$sss" | git stripspace >actual &&
|
||||
test_cmp expect actual &&
|
||||
test_must_be_empty actual &&
|
||||
|
||||
printf "$sss$sss$sss$sss" | git stripspace >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success \
|
||||
|
|
|
@ -286,11 +286,9 @@ test_expect_success 'OPT_CALLBACK() and OPT_BIT() work' '
|
|||
test_cmp expect output
|
||||
'
|
||||
|
||||
>expect
|
||||
|
||||
test_expect_success 'OPT_CALLBACK() and callback errors work' '
|
||||
test_must_fail test-parse-options --no-length >output 2>output.err &&
|
||||
test_i18ncmp expect output &&
|
||||
test_must_be_empty output &&
|
||||
test_must_be_empty output.err
|
||||
'
|
||||
|
||||
|
|
|
@ -11,7 +11,6 @@ cat >hello-script <<-EOF
|
|||
#!$SHELL_PATH
|
||||
cat hello-script
|
||||
EOF
|
||||
>empty
|
||||
|
||||
test_expect_success 'start_command reports ENOENT' '
|
||||
test-tool run-command start-command-ENOENT ./does-not-exist
|
||||
|
@ -23,7 +22,7 @@ test_expect_success 'run_command can run a command' '
|
|||
test-tool run-command run-command ./hello.sh >actual 2>err &&
|
||||
|
||||
test_cmp hello-script actual &&
|
||||
test_cmp empty err
|
||||
test_must_be_empty err
|
||||
'
|
||||
|
||||
test_expect_success !MINGW 'run_command can run a script without a #! line' '
|
||||
|
@ -34,7 +33,7 @@ test_expect_success !MINGW 'run_command can run a script without a #! line' '
|
|||
test-tool run-command run-command ./hello >actual 2>err &&
|
||||
|
||||
test_cmp hello-script actual &&
|
||||
test_cmp empty err
|
||||
test_must_be_empty err
|
||||
'
|
||||
|
||||
test_expect_success 'run_command does not try to execute a directory' '
|
||||
|
@ -47,7 +46,7 @@ test_expect_success 'run_command does not try to execute a directory' '
|
|||
PATH=$PWD/bin1:$PWD/bin2:$PATH \
|
||||
test-tool run-command run-command greet >actual 2>err &&
|
||||
test_cmp bin2/greet actual &&
|
||||
test_cmp empty err
|
||||
test_must_be_empty err
|
||||
'
|
||||
|
||||
test_expect_success POSIXPERM 'run_command passes over non-executable file' '
|
||||
|
@ -64,7 +63,7 @@ test_expect_success POSIXPERM 'run_command passes over non-executable file' '
|
|||
PATH=$PWD/bin1:$PWD/bin2:$PATH \
|
||||
test-tool run-command run-command greet >actual 2>err &&
|
||||
test_cmp bin2/greet actual &&
|
||||
test_cmp empty err
|
||||
test_must_be_empty err
|
||||
'
|
||||
|
||||
test_expect_success POSIXPERM 'run_command reports EACCES' '
|
||||
|
|
|
@ -239,7 +239,7 @@ test_expect_success 'no phantom error when switching trees' '
|
|||
>newdir/one &&
|
||||
git add newdir/one &&
|
||||
git checkout 2>errors &&
|
||||
! test -s errors
|
||||
test_must_be_empty errors
|
||||
'
|
||||
|
||||
test_expect_success 'switching trees does not invalidate shared index' '
|
||||
|
|
|
@ -11,7 +11,7 @@ test_expect_success 'git show a ISO-8859-1 commit under C locale' '
|
|||
. "$TEST_DIRECTORY"/t3901/8859-1.txt &&
|
||||
test_commit "iso-c-commit" iso-under-c &&
|
||||
git show >out 2>err &&
|
||||
! test -s err &&
|
||||
test_must_be_empty err &&
|
||||
grep -q "iso-c-commit" out
|
||||
'
|
||||
|
||||
|
@ -19,7 +19,7 @@ test_expect_success GETTEXT_LOCALE 'git show a ISO-8859-1 commit under a UTF-8 l
|
|||
. "$TEST_DIRECTORY"/t3901/8859-1.txt &&
|
||||
test_commit "iso-utf8-commit" iso-under-utf8 &&
|
||||
LANGUAGE=is LC_ALL="$is_IS_locale" git show >out 2>err &&
|
||||
! test -s err &&
|
||||
test_must_be_empty err &&
|
||||
grep -q "iso-utf8-commit" out
|
||||
'
|
||||
|
||||
|
|
|
@ -346,12 +346,9 @@ test_expect_success 'working --list' '
|
|||
git config --list > output &&
|
||||
test_cmp expect output
|
||||
'
|
||||
cat > expect << EOF
|
||||
EOF
|
||||
|
||||
test_expect_success '--list without repo produces empty output' '
|
||||
git --git-dir=nonexistent config --list >output &&
|
||||
test_cmp expect output
|
||||
test_must_be_empty output
|
||||
'
|
||||
|
||||
cat > expect << EOF
|
||||
|
|
|
@ -290,9 +290,8 @@ test_expect_success 'stale dirs do not cause d/f conflicts (reflogs off)' '
|
|||
# same as before, but we only create a reflog for "one" if
|
||||
# it already exists, which it does not
|
||||
git -c core.logallrefupdates=false branch one master &&
|
||||
: >expect &&
|
||||
git log -g --format="%gd %gs" one >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
# Triggering the bug detected by this test requires a newline to fall
|
||||
|
|
|
@ -136,13 +136,12 @@ test_expect_success '--date magic does not override explicit @{0} syntax' '
|
|||
test_cmp expect actual
|
||||
'
|
||||
|
||||
: >expect
|
||||
test_expect_success 'empty reflog file' '
|
||||
git branch empty &&
|
||||
git reflog expire --expire=all refs/heads/empty &&
|
||||
|
||||
git log -g empty >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
# This guards against the alternative of showing the diffs vs. the
|
||||
|
|
|
@ -16,8 +16,7 @@ test_expect_success setup '
|
|||
git checkout HEAD^0 &&
|
||||
test_commit B fileB two &&
|
||||
git tag -d A B &&
|
||||
git reflog expire --expire=now --all &&
|
||||
>empty
|
||||
git reflog expire --expire=now --all
|
||||
'
|
||||
|
||||
test_expect_success 'loose objects borrowed from alternate are not missing' '
|
||||
|
@ -29,12 +28,12 @@ test_expect_success 'loose objects borrowed from alternate are not missing' '
|
|||
test_commit C fileC one &&
|
||||
git fsck --no-dangling >../actual 2>&1
|
||||
) &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'HEAD is part of refs, valid objects appear valid' '
|
||||
git fsck >actual 2>&1 &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
# Corruption tests follow. Make sure to remove all traces of the
|
||||
|
@ -346,12 +345,12 @@ test_expect_success 'tag with NUL in header' '
|
|||
|
||||
test_expect_success 'cleaned up' '
|
||||
git fsck >actual 2>&1 &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'rev-list --verify-objects' '
|
||||
git rev-list --verify-objects --all >/dev/null 2>out &&
|
||||
test_cmp empty out
|
||||
test_must_be_empty out
|
||||
'
|
||||
|
||||
test_expect_success 'rev-list --verify-objects with bad sha1' '
|
||||
|
|
|
@ -41,7 +41,7 @@ test_expect_success 'setup: helper for testing rev-parse' '
|
|||
# rev-parse --show-prefix should output
|
||||
# a single newline when at the top of the work tree,
|
||||
# but we test for that separately.
|
||||
test -z "$4" && ! test -s actual.prefix ||
|
||||
test -z "$4" && test_must_be_empty actual.prefix ||
|
||||
test_cmp expected.prefix actual.prefix
|
||||
fi
|
||||
}
|
||||
|
|
|
@ -234,14 +234,14 @@ test_expect_success '#0: nonbare repo, no explicit configuration' '
|
|||
try_repo 0 unset unset unset "" unset \
|
||||
.git "$here/0" "$here/0" "(null)" \
|
||||
.git "$here/0" "$here/0" sub/ 2>message &&
|
||||
! test -s message
|
||||
test_must_be_empty message
|
||||
'
|
||||
|
||||
test_expect_success '#1: GIT_WORK_TREE without explicit GIT_DIR is accepted' '
|
||||
try_repo 1 "$here" unset unset "" unset \
|
||||
"$here/1/.git" "$here" "$here" 1/ \
|
||||
"$here/1/.git" "$here" "$here" 1/sub/ 2>message &&
|
||||
! test -s message
|
||||
test_must_be_empty message
|
||||
'
|
||||
|
||||
test_expect_success '#2: worktree defaults to cwd with explicit GIT_DIR' '
|
||||
|
@ -268,7 +268,7 @@ test_expect_success '#4: core.worktree without GIT_DIR set is accepted' '
|
|||
try_case 4 unset unset \
|
||||
.git "$here/4/sub" "$here/4" "(null)" \
|
||||
"$here/4/.git" "$here/4/sub" "$here/4/sub" "(null)" 2>message &&
|
||||
! test -s message
|
||||
test_must_be_empty message
|
||||
'
|
||||
|
||||
test_expect_success '#5: core.worktree + GIT_WORK_TREE is accepted' '
|
||||
|
@ -279,7 +279,7 @@ test_expect_success '#5: core.worktree + GIT_WORK_TREE is accepted' '
|
|||
try_repo 5a .. unset "$here/5a" "" unset \
|
||||
"$here/5a/.git" "$here" "$here" 5a/ \
|
||||
"$here/5a/.git" "$here/5a" "$here/5a" sub/ &&
|
||||
! test -s message
|
||||
test_must_be_empty message
|
||||
'
|
||||
|
||||
test_expect_success '#6: setting GIT_DIR brings core.worktree to life' '
|
||||
|
@ -376,7 +376,7 @@ test_expect_success '#9: GIT_WORK_TREE accepted with gitfile' '
|
|||
try_repo 9 wt unset unset gitfile unset \
|
||||
"$here/9.git" "$here/9/wt" "$here/9" "(null)" \
|
||||
"$here/9.git" "$here/9/sub/wt" "$here/9/sub" "(null)" 2>message &&
|
||||
! test -s message
|
||||
test_must_be_empty message
|
||||
'
|
||||
|
||||
test_expect_success '#10: GIT_DIR can point to gitfile' '
|
||||
|
@ -402,7 +402,7 @@ test_expect_success '#12: core.worktree with gitfile is accepted' '
|
|||
try_repo 12 unset unset "$here/12" gitfile unset \
|
||||
"$here/12.git" "$here/12" "$here/12" "(null)" \
|
||||
"$here/12.git" "$here/12" "$here/12" sub/ 2>message &&
|
||||
! test -s message
|
||||
test_must_be_empty message
|
||||
'
|
||||
|
||||
test_expect_success '#13: core.worktree+GIT_WORK_TREE accepted (with gitfile)' '
|
||||
|
@ -410,7 +410,7 @@ test_expect_success '#13: core.worktree+GIT_WORK_TREE accepted (with gitfile)' '
|
|||
try_repo 13 non-existent-too unset non-existent gitfile unset \
|
||||
"$here/13.git" "$here/13/non-existent-too" "$here/13" "(null)" \
|
||||
"$here/13.git" "$here/13/sub/non-existent-too" "$here/13/sub" "(null)" 2>message &&
|
||||
! test -s message
|
||||
test_must_be_empty message
|
||||
'
|
||||
|
||||
# case #14.
|
||||
|
@ -565,7 +565,7 @@ test_expect_success '#17: GIT_WORK_TREE without explicit GIT_DIR is accepted (ba
|
|||
try_repo 17c "$here/17c" unset unset "" true \
|
||||
.git "$here/17c" "$here/17c" "(null)" \
|
||||
"$here/17c/.git" "$here/17c" "$here/17c" sub/ 2>message &&
|
||||
! test -s message
|
||||
test_must_be_empty message
|
||||
'
|
||||
|
||||
test_expect_success '#18: bare .git named by GIT_DIR has no worktree' '
|
||||
|
@ -594,7 +594,7 @@ test_expect_success '#20a: core.worktree without GIT_DIR accepted (inside .git)'
|
|||
"$here/20a/.git" "$here/20a" "$here/20a" .git/wt/ &&
|
||||
try_case 20a/.git/wt/sub unset unset \
|
||||
"$here/20a/.git" "$here/20a" "$here/20a" .git/wt/sub/ &&
|
||||
! test -s message
|
||||
test_must_be_empty message
|
||||
'
|
||||
|
||||
test_expect_success '#20b/c: core.worktree and core.bare conflict' '
|
||||
|
@ -626,7 +626,7 @@ test_expect_success '#21: setup, core.worktree warns before overriding core.bare
|
|||
export GIT_WORK_TREE &&
|
||||
git status >/dev/null
|
||||
) 2>message &&
|
||||
! test -s message
|
||||
test_must_be_empty message
|
||||
|
||||
'
|
||||
run_wt_tests 21
|
||||
|
@ -742,7 +742,7 @@ test_expect_success '#25: GIT_WORK_TREE accepted if GIT_DIR unset (bare gitfile
|
|||
try_repo 25 "$here/25" unset unset gitfile true \
|
||||
"$here/25.git" "$here/25" "$here/25" "(null)" \
|
||||
"$here/25.git" "$here/25" "$here/25" "sub/" 2>message &&
|
||||
! test -s message
|
||||
test_must_be_empty message
|
||||
'
|
||||
|
||||
test_expect_success '#26: bare repo has no worktree (GIT_DIR -> gitfile case)' '
|
||||
|
@ -780,7 +780,7 @@ test_expect_success '#29: setup' '
|
|||
export GIT_WORK_TREE &&
|
||||
git status
|
||||
) 2>message &&
|
||||
! test -s message
|
||||
test_must_be_empty message
|
||||
'
|
||||
run_wt_tests 29 gitfile
|
||||
|
||||
|
|
|
@ -41,8 +41,7 @@ test_expect_success 'no warning with bogus GIT_INDEX_VERSION and existing index'
|
|||
GIT_INDEX_VERSION=1 &&
|
||||
export GIT_INDEX_VERSION &&
|
||||
git add a 2>actual.err &&
|
||||
>expect.err &&
|
||||
test_i18ncmp expect.err actual.err
|
||||
test_must_be_empty actual.err
|
||||
)
|
||||
'
|
||||
|
||||
|
|
|
@ -143,9 +143,7 @@ test_expect_success 'remove file not in base index' '
|
|||
test_expect_success 'remove file in base index' '
|
||||
git update-index --force-remove one &&
|
||||
git ls-files --stage >ls-files.actual &&
|
||||
cat >ls-files.expect <<-EOF &&
|
||||
EOF
|
||||
test_cmp ls-files.expect ls-files.actual &&
|
||||
test_must_be_empty ls-files.actual &&
|
||||
|
||||
test-tool dump-split-index .git/index | sed "/^own/d" >actual &&
|
||||
cat >expect <<-EOF &&
|
||||
|
|
|
@ -44,7 +44,7 @@ test_expect_success '"checkout <submodule>" honors diff.ignoreSubmodules' '
|
|||
git config diff.ignoreSubmodules dirty &&
|
||||
echo x> submodule/untracked &&
|
||||
git checkout HEAD >actual 2>&1 &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success '"checkout <submodule>" honors submodule.*.ignore from .gitmodules' '
|
||||
|
@ -52,7 +52,7 @@ test_expect_success '"checkout <submodule>" honors submodule.*.ignore from .gitm
|
|||
git config -f .gitmodules submodule.submodule.path submodule &&
|
||||
git config -f .gitmodules submodule.submodule.ignore untracked &&
|
||||
git checkout HEAD >actual 2>&1 &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success '"checkout <submodule>" honors submodule.*.ignore from .git/config' '
|
||||
|
@ -60,7 +60,7 @@ test_expect_success '"checkout <submodule>" honors submodule.*.ignore from .git/
|
|||
git config submodule.submodule.path submodule &&
|
||||
git config submodule.submodule.ignore all &&
|
||||
git checkout HEAD >actual 2>&1 &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
KNOWN_FAILURE_DIRECTORY_SUBMODULE_CONFLICTS=1
|
||||
|
|
|
@ -88,9 +88,8 @@ test_expect_success 'non-qualified update in subdir updates from the root' '
|
|||
echo even more >>sub2 &&
|
||||
git add -u
|
||||
) &&
|
||||
: >expect &&
|
||||
git diff-files --name-only >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'replace a file with a symlink' '
|
||||
|
|
|
@ -195,8 +195,7 @@ test_expect_success 'rename detection finds the right names' '
|
|||
test_cmp expected.4 actual.4 &&
|
||||
|
||||
git diff --cached --stat >actual.5 &&
|
||||
: >expected.5 &&
|
||||
test_cmp expected.5 actual.5
|
||||
test_must_be_empty actual.5
|
||||
|
||||
)
|
||||
'
|
||||
|
@ -241,8 +240,7 @@ test_expect_success 'diff-files/diff-cached shows ita as new/not-new files' '
|
|||
echo " create mode 100644 new-ita" >expected &&
|
||||
test_cmp expected actual &&
|
||||
git diff --cached --summary >actual2 &&
|
||||
: >expected2 &&
|
||||
test_cmp expected2 actual2
|
||||
test_must_be_empty actual2
|
||||
'
|
||||
|
||||
|
||||
|
|
|
@ -31,7 +31,7 @@ do
|
|||
rm -f .git/index &&
|
||||
test_must_fail git add "$i" 2>err &&
|
||||
git ls-files "$i" >out &&
|
||||
! test -s out
|
||||
test_must_be_empty out
|
||||
'
|
||||
|
||||
test_expect_success "complaints for ignored $i output" '
|
||||
|
@ -42,7 +42,7 @@ do
|
|||
rm -f .git/index &&
|
||||
test_must_fail git add "$i" file 2>err &&
|
||||
git ls-files "$i" >out &&
|
||||
! test -s out
|
||||
test_must_be_empty out
|
||||
'
|
||||
test_expect_success "complaints for ignored $i with unignored file output" '
|
||||
test_i18ngrep -e "Use -f if" err
|
||||
|
@ -57,7 +57,7 @@ do
|
|||
cd dir &&
|
||||
test_must_fail git add "$i" 2>err &&
|
||||
git ls-files "$i" >out &&
|
||||
! test -s out
|
||||
test_must_be_empty out
|
||||
)
|
||||
'
|
||||
|
||||
|
@ -77,7 +77,7 @@ do
|
|||
cd sub &&
|
||||
test_must_fail git add "$i" 2>err &&
|
||||
git ls-files "$i" >out &&
|
||||
! test -s out
|
||||
test_must_be_empty out
|
||||
)
|
||||
'
|
||||
|
||||
|
|
|
@ -277,9 +277,8 @@ test_expect_success 'hide empty ignored sub-directory with --no-empty-directory'
|
|||
'
|
||||
|
||||
test_expect_success 'pattern matches prefix completely' '
|
||||
: >expect &&
|
||||
git ls-files -i -o --exclude "/three/a.3[abc]" >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'ls-files with "**" patterns' '
|
||||
|
@ -295,9 +294,8 @@ EOF
|
|||
|
||||
|
||||
test_expect_success 'ls-files with "**" patterns and no slashes' '
|
||||
: >expect &&
|
||||
git ls-files -o -i --exclude "one**a.1" >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_done
|
||||
|
|
|
@ -8,16 +8,14 @@ command-line arguments.
|
|||
|
||||
. ./test-lib.sh
|
||||
|
||||
>empty
|
||||
|
||||
test_expect_success 'ls-files in empty repository' '
|
||||
git ls-files >actual &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'ls-files with nonexistent path' '
|
||||
git ls-files doesnotexist >actual &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'ls-files with nonsense option' '
|
||||
|
|
|
@ -17,7 +17,6 @@ test_commit_this () {
|
|||
}
|
||||
|
||||
test_expect_success 'setup' '
|
||||
: >empty &&
|
||||
test_file checked-out init &&
|
||||
test_file modify_delete modify_delete_init &&
|
||||
test_commit_this init &&
|
||||
|
@ -38,7 +37,7 @@ test_expect_success 'reset --hard works after the conflict' '
|
|||
|
||||
test_expect_success 'is reset properly' '
|
||||
git status --porcelain -- modify_delete >out &&
|
||||
test_cmp empty out &&
|
||||
test_must_be_empty out &&
|
||||
test_path_is_missing modify_delete
|
||||
'
|
||||
|
||||
|
@ -52,7 +51,7 @@ test_expect_success 'Merge abort works after the conflict' '
|
|||
|
||||
test_expect_success 'is aborted properly' '
|
||||
git status --porcelain -- modify_delete >out &&
|
||||
test_cmp empty out &&
|
||||
test_must_be_empty out &&
|
||||
test_path_is_missing modify_delete
|
||||
'
|
||||
|
||||
|
|
|
@ -127,7 +127,7 @@ test_expect_success 'explicit pack-refs with dangling packed reference' '
|
|||
git reflog expire --expire=all --all &&
|
||||
git prune --expire=all &&
|
||||
git pack-refs --all 2>result &&
|
||||
test_cmp /dev/null result
|
||||
test_must_be_empty result
|
||||
'
|
||||
|
||||
test_expect_success 'delete ref with dangling packed version' '
|
||||
|
@ -139,7 +139,7 @@ test_expect_success 'delete ref with dangling packed version' '
|
|||
git reflog expire --expire=all --all &&
|
||||
git prune --expire=all &&
|
||||
git branch -d lamb 2>result &&
|
||||
test_cmp /dev/null result
|
||||
test_must_be_empty result
|
||||
'
|
||||
|
||||
test_expect_success 'delete ref while another dangling packed ref' '
|
||||
|
@ -150,7 +150,7 @@ test_expect_success 'delete ref while another dangling packed ref' '
|
|||
git reflog expire --expire=all --all &&
|
||||
git prune --expire=all &&
|
||||
git branch -d lamb 2>result &&
|
||||
test_cmp /dev/null result
|
||||
test_must_be_empty result
|
||||
'
|
||||
|
||||
test_expect_success 'pack ref directly below refs/' '
|
||||
|
|
|
@ -481,10 +481,8 @@ test_expect_success 'list specific note with "git notes list <object>"' '
|
|||
'
|
||||
|
||||
test_expect_success 'listing non-existing notes fails' '
|
||||
cat >expect <<-EOF &&
|
||||
EOF
|
||||
test_must_fail git notes list HEAD >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'append to existing note with "git notes append"' '
|
||||
|
|
|
@ -183,7 +183,7 @@ test_expect_success 'merge empty notes ref (z => y)' '
|
|||
git notes add -m "foo" &&
|
||||
git notes remove &&
|
||||
git notes >output_notes_z &&
|
||||
test_cmp /dev/null output_notes_z &&
|
||||
test_must_be_empty output_notes_z &&
|
||||
# Do the merge (z => y)
|
||||
git config core.notesRef refs/notes/y &&
|
||||
git notes merge z &&
|
||||
|
|
|
@ -337,7 +337,7 @@ EOF
|
|||
git notes merge --commit &&
|
||||
# No .git/NOTES_MERGE_* files left
|
||||
test_might_fail ls .git/NOTES_MERGE_* >output 2>/dev/null &&
|
||||
test_cmp /dev/null output &&
|
||||
test_must_be_empty output &&
|
||||
# Merge commit has pre-merge y and pre-merge z as parents
|
||||
test "$(git rev-parse refs/notes/m^1)" = "$(cat pre_merge_y)" &&
|
||||
test "$(git rev-parse refs/notes/m^2)" = "$(cat pre_merge_z)" &&
|
||||
|
@ -399,7 +399,7 @@ test_expect_success 'abort notes merge' '
|
|||
git notes merge --abort &&
|
||||
# No .git/NOTES_MERGE_* files left
|
||||
test_might_fail ls .git/NOTES_MERGE_* >output 2>/dev/null &&
|
||||
test_cmp /dev/null output &&
|
||||
test_must_be_empty output &&
|
||||
# m has not moved (still == y)
|
||||
test "$(git rev-parse refs/notes/m)" = "$(cat pre_merge_y)" &&
|
||||
# Verify that other notes refs has not changed (w, x, y and z)
|
||||
|
@ -466,7 +466,7 @@ EOF
|
|||
git notes merge --commit &&
|
||||
# No .git/NOTES_MERGE_* files left
|
||||
test_might_fail ls .git/NOTES_MERGE_* >output 2>/dev/null &&
|
||||
test_cmp /dev/null output &&
|
||||
test_must_be_empty output &&
|
||||
# Merge commit has pre-merge y and pre-merge z as parents
|
||||
test "$(git rev-parse refs/notes/m^1)" = "$(cat pre_merge_y)" &&
|
||||
test "$(git rev-parse refs/notes/m^2)" = "$(cat pre_merge_z)" &&
|
||||
|
@ -555,7 +555,7 @@ test_expect_success 'resolve situation by aborting the notes merge' '
|
|||
git notes merge --abort &&
|
||||
# No .git/NOTES_MERGE_* files left
|
||||
test_might_fail ls .git/NOTES_MERGE_* >output 2>/dev/null &&
|
||||
test_cmp /dev/null output &&
|
||||
test_must_be_empty output &&
|
||||
# m has not moved (still == w)
|
||||
test "$(git rev-parse refs/notes/m)" = "$(git rev-parse refs/notes/w)" &&
|
||||
# Verify that other notes refs has not changed (w, x, y and z)
|
||||
|
|
|
@ -796,16 +796,15 @@ test_expect_success 'always cherry-pick with --no-ff' '
|
|||
git tag original-no-ff-branch &&
|
||||
set_fake_editor &&
|
||||
git rebase -i --no-ff A &&
|
||||
touch empty &&
|
||||
for p in 0 1 2
|
||||
do
|
||||
test ! $(git rev-parse HEAD~$p) = $(git rev-parse original-no-ff-branch~$p) &&
|
||||
git diff HEAD~$p original-no-ff-branch~$p > out &&
|
||||
test_cmp empty out
|
||||
test_must_be_empty out
|
||||
done &&
|
||||
test $(git rev-parse HEAD~3) = $(git rev-parse original-no-ff-branch~3) &&
|
||||
git diff HEAD~3 original-no-ff-branch~3 > out &&
|
||||
test_cmp empty out
|
||||
test_must_be_empty out
|
||||
'
|
||||
|
||||
test_expect_success 'set up commits with funny messages' '
|
||||
|
|
|
@ -380,7 +380,7 @@ test_expect_success 'rm does not complain when no .gitmodules file is found' '
|
|||
git submodule update &&
|
||||
git rm .gitmodules &&
|
||||
git rm submod >actual 2>actual.err &&
|
||||
! test -s actual.err &&
|
||||
test_must_be_empty actual.err &&
|
||||
! test -d submod &&
|
||||
! test -f submod/.git &&
|
||||
git status -s -uno >actual &&
|
||||
|
@ -398,7 +398,7 @@ test_expect_success 'rm will error out on a modified .gitmodules file unless sta
|
|||
git diff-files --quiet -- submod &&
|
||||
git add .gitmodules &&
|
||||
git rm submod >actual 2>actual.err &&
|
||||
! test -s actual.err &&
|
||||
test_must_be_empty actual.err &&
|
||||
! test -d submod &&
|
||||
! test -f submod/.git &&
|
||||
git status -s -uno >actual &&
|
||||
|
@ -692,7 +692,7 @@ test_expect_success 'checking out a commit after submodule removal needs manual
|
|||
test_cmp expected actual &&
|
||||
rm -rf submod &&
|
||||
git status -s -uno --ignore-submodules=none >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'rm of d/f when d has become a non-directory' '
|
||||
|
|
|
@ -126,7 +126,7 @@ test_expect_success SYMLINKS 'diff symlinks with non-existing targets' '
|
|||
ln -s take\ over brain &&
|
||||
test_must_fail git diff --no-index pinky brain >output 2>output.err &&
|
||||
grep narf output &&
|
||||
! test -s output.err
|
||||
test_must_be_empty output.err
|
||||
'
|
||||
|
||||
test_expect_success SYMLINKS 'setup symlinks with attributes' '
|
||||
|
|
|
@ -776,8 +776,6 @@ test_expect_success 'checkdiff allows new blank lines' '
|
|||
git diff --check
|
||||
'
|
||||
|
||||
cat <<EOF >expect
|
||||
EOF
|
||||
test_expect_success 'whitespace-only changes not reported' '
|
||||
git reset --hard &&
|
||||
echo >x "hello world" &&
|
||||
|
@ -785,7 +783,7 @@ test_expect_success 'whitespace-only changes not reported' '
|
|||
git commit -m "hello 1" &&
|
||||
echo >x "hello world" &&
|
||||
git diff -b >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
cat <<EOF >expect
|
||||
|
|
|
@ -260,7 +260,7 @@ test_expect_success 'trailing empty lines (2)' '
|
|||
|
||||
echo "F -whitespace" >.gitattributes &&
|
||||
git diff --check >output &&
|
||||
! test -s output
|
||||
test_must_be_empty output
|
||||
|
||||
'
|
||||
|
||||
|
|
|
@ -104,19 +104,19 @@ test_expect_success 'git diff HEAD with dirty submodule (work tree, refs match)'
|
|||
expect_from_to >expect.body $subprev $subprev-dirty &&
|
||||
test_cmp expect.body actual.body &&
|
||||
git diff --ignore-submodules HEAD >actual2 &&
|
||||
! test -s actual2 &&
|
||||
test_must_be_empty actual2 &&
|
||||
git diff --ignore-submodules=untracked HEAD >actual3 &&
|
||||
sed -e "1,/^@@/d" actual3 >actual3.body &&
|
||||
expect_from_to >expect.body $subprev $subprev-dirty &&
|
||||
test_cmp expect.body actual3.body &&
|
||||
git diff --ignore-submodules=dirty HEAD >actual4 &&
|
||||
! test -s actual4
|
||||
test_must_be_empty actual4
|
||||
'
|
||||
|
||||
test_expect_success 'git diff HEAD with dirty submodule (work tree, refs match) [.gitmodules]' '
|
||||
git config diff.ignoreSubmodules dirty &&
|
||||
git diff HEAD >actual &&
|
||||
! test -s actual &&
|
||||
test_must_be_empty actual &&
|
||||
git config --add -f .gitmodules submodule.subname.ignore none &&
|
||||
git config --add -f .gitmodules submodule.subname.path sub &&
|
||||
git diff HEAD >actual &&
|
||||
|
@ -126,7 +126,7 @@ test_expect_success 'git diff HEAD with dirty submodule (work tree, refs match)
|
|||
git config -f .gitmodules submodule.subname.ignore all &&
|
||||
git config -f .gitmodules submodule.subname.path sub &&
|
||||
git diff HEAD >actual2 &&
|
||||
! test -s actual2 &&
|
||||
test_must_be_empty actual2 &&
|
||||
git config -f .gitmodules submodule.subname.ignore untracked &&
|
||||
git diff HEAD >actual3 &&
|
||||
sed -e "1,/^@@/d" actual3 >actual3.body &&
|
||||
|
@ -134,7 +134,7 @@ test_expect_success 'git diff HEAD with dirty submodule (work tree, refs match)
|
|||
test_cmp expect.body actual3.body &&
|
||||
git config -f .gitmodules submodule.subname.ignore dirty &&
|
||||
git diff HEAD >actual4 &&
|
||||
! test -s actual4 &&
|
||||
test_must_be_empty actual4 &&
|
||||
git config submodule.subname.ignore none &&
|
||||
git config submodule.subname.path sub &&
|
||||
git diff HEAD >actual &&
|
||||
|
@ -172,24 +172,24 @@ test_expect_success 'git diff HEAD with dirty submodule (untracked, refs match)'
|
|||
expect_from_to >expect.body $subprev $subprev-dirty &&
|
||||
test_cmp expect.body actual.body &&
|
||||
git diff --ignore-submodules=all HEAD >actual2 &&
|
||||
! test -s actual2 &&
|
||||
test_must_be_empty actual2 &&
|
||||
git diff --ignore-submodules=untracked HEAD >actual3 &&
|
||||
! test -s actual3 &&
|
||||
test_must_be_empty actual3 &&
|
||||
git diff --ignore-submodules=dirty HEAD >actual4 &&
|
||||
! test -s actual4
|
||||
test_must_be_empty actual4
|
||||
'
|
||||
|
||||
test_expect_success 'git diff HEAD with dirty submodule (untracked, refs match) [.gitmodules]' '
|
||||
git config --add -f .gitmodules submodule.subname.ignore all &&
|
||||
git config --add -f .gitmodules submodule.subname.path sub &&
|
||||
git diff HEAD >actual2 &&
|
||||
! test -s actual2 &&
|
||||
test_must_be_empty actual2 &&
|
||||
git config -f .gitmodules submodule.subname.ignore untracked &&
|
||||
git diff HEAD >actual3 &&
|
||||
! test -s actual3 &&
|
||||
test_must_be_empty actual3 &&
|
||||
git config -f .gitmodules submodule.subname.ignore dirty &&
|
||||
git diff HEAD >actual4 &&
|
||||
! test -s actual4 &&
|
||||
test_must_be_empty actual4 &&
|
||||
git config submodule.subname.ignore none &&
|
||||
git config submodule.subname.path sub &&
|
||||
git diff HEAD >actual &&
|
||||
|
@ -211,7 +211,7 @@ test_expect_success 'git diff between submodule commits' '
|
|||
expect_from_to >expect.body $subtip $subprev &&
|
||||
test_cmp expect.body actual.body &&
|
||||
git diff --ignore-submodules HEAD^..HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'git diff between submodule commits [.gitmodules]' '
|
||||
|
@ -227,7 +227,7 @@ test_expect_success 'git diff between submodule commits [.gitmodules]' '
|
|||
test_cmp expect.body actual.body &&
|
||||
git config -f .gitmodules submodule.subname.ignore all &&
|
||||
git diff HEAD^..HEAD >actual &&
|
||||
! test -s actual &&
|
||||
test_must_be_empty actual &&
|
||||
git config submodule.subname.ignore dirty &&
|
||||
git config submodule.subname.path sub &&
|
||||
git diff HEAD^..HEAD >actual &&
|
||||
|
@ -239,10 +239,9 @@ test_expect_success 'git diff between submodule commits [.gitmodules]' '
|
|||
'
|
||||
|
||||
test_expect_success 'git diff (empty submodule dir)' '
|
||||
: >empty &&
|
||||
rm -rf sub/* sub/.git &&
|
||||
git diff > actual.empty &&
|
||||
test_cmp empty actual.empty
|
||||
test_must_be_empty actual.empty
|
||||
'
|
||||
|
||||
test_expect_success 'conflicted submodule setup' '
|
||||
|
|
|
@ -257,9 +257,7 @@ test_expect_success 'typechanged submodule(blob->submodule)' '
|
|||
commit_file sm1 &&
|
||||
test_expect_success 'submodule is up to date' '
|
||||
git diff-index -p --submodule=log HEAD >actual &&
|
||||
cat >expected <<-EOF &&
|
||||
EOF
|
||||
test_cmp expected actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'submodule contains untracked content' '
|
||||
|
@ -273,17 +271,17 @@ test_expect_success 'submodule contains untracked content' '
|
|||
|
||||
test_expect_success 'submodule contains untracked content (untracked ignored)' '
|
||||
git diff-index -p --ignore-submodules=untracked --submodule=log HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'submodule contains untracked content (dirty ignored)' '
|
||||
git diff-index -p --ignore-submodules=dirty --submodule=log HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'submodule contains untracked content (all ignored)' '
|
||||
git diff-index -p --ignore-submodules=all --submodule=log HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'submodule contains untracked and modifed content' '
|
||||
|
@ -308,13 +306,13 @@ test_expect_success 'submodule contains untracked and modifed content (untracked
|
|||
test_expect_success 'submodule contains untracked and modifed content (dirty ignored)' '
|
||||
echo new > sm1/foo6 &&
|
||||
git diff-index -p --ignore-submodules=dirty --submodule=log HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'submodule contains untracked and modifed content (all ignored)' '
|
||||
echo new > sm1/foo6 &&
|
||||
git diff-index -p --ignore-submodules --submodule=log HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'submodule contains modifed content' '
|
||||
|
@ -368,7 +366,7 @@ test_expect_success 'modified submodule contains untracked content (dirty ignore
|
|||
|
||||
test_expect_success 'modified submodule contains untracked content (all ignored)' '
|
||||
git diff-index -p --ignore-submodules=all --submodule=log HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'modified submodule contains untracked and modifed content' '
|
||||
|
@ -407,7 +405,7 @@ test_expect_success 'modified submodule contains untracked and modifed content (
|
|||
test_expect_success 'modified submodule contains untracked and modifed content (all ignored)' '
|
||||
echo modification >> sm1/foo6 &&
|
||||
git diff-index -p --ignore-submodules --submodule=log HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'modified submodule contains modifed content' '
|
||||
|
|
|
@ -940,7 +940,7 @@ test_expect_success 'diff.dirstat=0,lines' '
|
|||
test_expect_success '--dirstat=future_param,lines,0 should fail loudly' '
|
||||
test_must_fail git diff --dirstat=future_param,lines,0 HEAD^..HEAD >actual_diff_dirstat 2>actual_error &&
|
||||
test_debug "cat actual_error" &&
|
||||
test_cmp /dev/null actual_diff_dirstat &&
|
||||
test_must_be_empty actual_diff_dirstat &&
|
||||
test_i18ngrep -q "future_param" actual_error &&
|
||||
test_i18ngrep -q "\--dirstat" actual_error
|
||||
'
|
||||
|
@ -948,7 +948,7 @@ test_expect_success '--dirstat=future_param,lines,0 should fail loudly' '
|
|||
test_expect_success '--dirstat=dummy1,cumulative,2dummy should report both unrecognized parameters' '
|
||||
test_must_fail git diff --dirstat=dummy1,cumulative,2dummy HEAD^..HEAD >actual_diff_dirstat 2>actual_error &&
|
||||
test_debug "cat actual_error" &&
|
||||
test_cmp /dev/null actual_diff_dirstat &&
|
||||
test_must_be_empty actual_diff_dirstat &&
|
||||
test_i18ngrep -q "dummy1" actual_error &&
|
||||
test_i18ngrep -q "2dummy" actual_error &&
|
||||
test_i18ngrep -q "\--dirstat" actual_error
|
||||
|
|
|
@ -392,9 +392,7 @@ test_expect_success 'typechanged submodule(blob->submodule)' '
|
|||
commit_file sm1 &&
|
||||
test_expect_success 'submodule is up to date' '
|
||||
git diff-index -p --submodule=diff HEAD >actual &&
|
||||
cat >expected <<-EOF &&
|
||||
EOF
|
||||
test_cmp expected actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'submodule contains untracked content' '
|
||||
|
@ -408,17 +406,17 @@ test_expect_success 'submodule contains untracked content' '
|
|||
|
||||
test_expect_success 'submodule contains untracked content (untracked ignored)' '
|
||||
git diff-index -p --ignore-submodules=untracked --submodule=diff HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'submodule contains untracked content (dirty ignored)' '
|
||||
git diff-index -p --ignore-submodules=dirty --submodule=diff HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'submodule contains untracked content (all ignored)' '
|
||||
git diff-index -p --ignore-submodules=all --submodule=diff HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'submodule contains untracked and modified content' '
|
||||
|
@ -458,13 +456,13 @@ test_expect_success 'submodule contains untracked and modified content (untracke
|
|||
test_expect_success 'submodule contains untracked and modified content (dirty ignored)' '
|
||||
echo new > sm1/foo6 &&
|
||||
git diff-index -p --ignore-submodules=dirty --submodule=diff HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'submodule contains untracked and modified content (all ignored)' '
|
||||
echo new > sm1/foo6 &&
|
||||
git diff-index -p --ignore-submodules --submodule=diff HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'submodule contains modified content' '
|
||||
|
@ -549,7 +547,7 @@ test_expect_success 'modified submodule contains untracked content (dirty ignore
|
|||
|
||||
test_expect_success 'modified submodule contains untracked content (all ignored)' '
|
||||
git diff-index -p --ignore-submodules=all --submodule=diff HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'modified submodule contains untracked and modified content' '
|
||||
|
@ -609,7 +607,7 @@ test_expect_success 'modified submodule contains untracked and modified content
|
|||
test_expect_success 'modified submodule contains untracked and modified content (all ignored)' '
|
||||
echo modification >> sm1/foo6 &&
|
||||
git diff-index -p --ignore-submodules --submodule=diff HEAD >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
# NOT OK
|
||||
|
|
|
@ -42,7 +42,7 @@ test_expect_success 'apply in reverse' '
|
|||
git reset --hard second &&
|
||||
git apply --reverse --binary --index patch &&
|
||||
git diff >diff &&
|
||||
test_cmp /dev/null diff
|
||||
test_must_be_empty diff
|
||||
|
||||
'
|
||||
|
||||
|
|
|
@ -100,7 +100,7 @@ test_expect_success 'whitespace=warn, default rule' '
|
|||
test_expect_success 'whitespace=error-all, default rule' '
|
||||
|
||||
test_must_fail apply_patch --whitespace=error-all &&
|
||||
! test -s target
|
||||
test_must_be_empty target
|
||||
|
||||
'
|
||||
|
||||
|
|
|
@ -49,8 +49,7 @@ test_expect_success setup '
|
|||
sed -e "s/TS0/$timeGMT/" -e "s/TS1/$epocGMT/" <d >removeGMT.patch &&
|
||||
sed -e "s/TS0/$timeWest/" -e "s/TS1/$epocWest2/" <d >removeWest2.patch &&
|
||||
|
||||
echo something >something &&
|
||||
>empty
|
||||
echo something >something
|
||||
'
|
||||
|
||||
for patch in *.patch
|
||||
|
@ -81,7 +80,7 @@ do
|
|||
git add file &&
|
||||
git apply --index $patch &&
|
||||
test -f file &&
|
||||
test_cmp empty file
|
||||
test_must_be_empty file
|
||||
;;
|
||||
remove*)
|
||||
# must remove the file
|
||||
|
|
|
@ -652,7 +652,7 @@ test_expect_success 'am -3 -q is quiet' '
|
|||
git checkout -f lorem2 &&
|
||||
git reset base3way --hard &&
|
||||
git am -3 -q lorem-move.patch >output.out 2>&1 &&
|
||||
! test -s output.out
|
||||
test_must_be_empty output.out
|
||||
'
|
||||
|
||||
test_expect_success 'am pauses on conflict' '
|
||||
|
@ -875,7 +875,7 @@ test_expect_success 'am -q is quiet' '
|
|||
git checkout first &&
|
||||
test_tick &&
|
||||
git am -q <patch1 >output.out 2>&1 &&
|
||||
! test -s output.out
|
||||
test_must_be_empty output.out
|
||||
'
|
||||
|
||||
test_expect_success 'am empty-file does not infloop' '
|
||||
|
|
|
@ -192,7 +192,7 @@ test_expect_success 'shortlog with revision pseudo options' '
|
|||
|
||||
test_expect_success 'shortlog with --output=<file>' '
|
||||
git shortlog --output=shortlog -1 master >output &&
|
||||
test ! -s output &&
|
||||
test_must_be_empty output &&
|
||||
test_line_count = 3 shortlog
|
||||
'
|
||||
|
||||
|
|
|
@ -461,11 +461,9 @@ test_expect_success 'Grep author with log.mailmap' '
|
|||
test_cmp expect actual
|
||||
'
|
||||
|
||||
>expect
|
||||
|
||||
test_expect_success 'Only grep replaced author with --use-mailmap' '
|
||||
git log --use-mailmap --author "<cto@coompany.xx>" >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
# git blame
|
||||
|
|
|
@ -101,7 +101,7 @@ test_expect_success '-L with --first-parent and a merge' '
|
|||
test_expect_success '-L with --output' '
|
||||
git checkout parallel-change &&
|
||||
git log --output=log -L :main:b.c >output &&
|
||||
test ! -s output &&
|
||||
test_must_be_empty output &&
|
||||
test_line_count = 70 log
|
||||
'
|
||||
|
||||
|
|
|
@ -26,22 +26,20 @@ test_expect_success 'git log with broken author email' '
|
|||
echo
|
||||
echo " foo"
|
||||
} >expect.out &&
|
||||
: >expect.err &&
|
||||
|
||||
git log broken_email >actual.out 2>actual.err &&
|
||||
|
||||
test_cmp expect.out actual.out &&
|
||||
test_cmp expect.err actual.err
|
||||
test_must_be_empty actual.err
|
||||
'
|
||||
|
||||
test_expect_success 'git log --format with broken author email' '
|
||||
echo "A U Thor+author@example.com+Thu Apr 7 15:13:13 2005 -0700" >expect.out &&
|
||||
: >expect.err &&
|
||||
|
||||
git log --format="%an+%ae+%ad" broken_email >actual.out 2>actual.err &&
|
||||
|
||||
test_cmp expect.out actual.out &&
|
||||
test_cmp expect.err actual.err
|
||||
test_must_be_empty actual.err
|
||||
'
|
||||
|
||||
munge_author_date () {
|
||||
|
|
|
@ -25,25 +25,19 @@ EXPECTED
|
|||
'
|
||||
|
||||
test_expect_success 'file add !A, B' '
|
||||
cat >expected <<\EXPECTED &&
|
||||
EXPECTED
|
||||
|
||||
git reset --hard initial &&
|
||||
test_commit "add-not-a-b" "ONE" "AAA" &&
|
||||
git merge-tree initial add-not-a-b initial >actual &&
|
||||
test_cmp expected actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'file add A, B (same)' '
|
||||
cat >expected <<\EXPECTED &&
|
||||
EXPECTED
|
||||
|
||||
git reset --hard initial &&
|
||||
test_commit "add-a-b-same-A" "ONE" "AAA" &&
|
||||
git reset --hard initial &&
|
||||
test_commit "add-a-b-same-B" "ONE" "AAA" &&
|
||||
git merge-tree initial add-a-b-same-A add-a-b-same-B >actual &&
|
||||
test_cmp expected actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'file add A, B (different)' '
|
||||
|
@ -68,13 +62,10 @@ EXPECTED
|
|||
'
|
||||
|
||||
test_expect_success 'file change A, !B' '
|
||||
cat >expected <<\EXPECTED &&
|
||||
EXPECTED
|
||||
|
||||
git reset --hard initial &&
|
||||
test_commit "change-a-not-b" "initial-file" "BBB" &&
|
||||
git merge-tree initial change-a-not-b initial >actual &&
|
||||
test_cmp expected actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'file change !A, B' '
|
||||
|
@ -94,15 +85,12 @@ EXPECTED
|
|||
'
|
||||
|
||||
test_expect_success 'file change A, B (same)' '
|
||||
cat >expected <<\EXPECTED &&
|
||||
EXPECTED
|
||||
|
||||
git reset --hard initial &&
|
||||
test_commit "change-a-b-same-A" "initial-file" "AAA" &&
|
||||
git reset --hard initial &&
|
||||
test_commit "change-a-b-same-B" "initial-file" "AAA" &&
|
||||
git merge-tree initial change-a-b-same-A change-a-b-same-B >actual &&
|
||||
test_cmp expected actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'file change A, B (different)' '
|
||||
|
@ -175,16 +163,13 @@ AAA" &&
|
|||
'
|
||||
|
||||
test_expect_success 'file remove A, !B' '
|
||||
cat >expected <<\EXPECTED &&
|
||||
EXPECTED
|
||||
|
||||
git reset --hard initial &&
|
||||
test_commit "rm-a-not-b-base" "ONE" "AAA" &&
|
||||
git rm ONE &&
|
||||
git commit -m "rm-a-not-b" &&
|
||||
git tag "rm-a-not-b" &&
|
||||
git merge-tree rm-a-not-b-base rm-a-not-b rm-a-not-b-base >actual &&
|
||||
test_cmp expected actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'file remove !A, B' '
|
||||
|
@ -206,16 +191,13 @@ EXPECTED
|
|||
'
|
||||
|
||||
test_expect_success 'file remove A, B (same)' '
|
||||
cat >expected <<\EXPECTED &&
|
||||
EXPECTED
|
||||
|
||||
git reset --hard initial &&
|
||||
test_commit "rm-a-b-base" "ONE" "AAA" &&
|
||||
git rm ONE &&
|
||||
git commit -m "rm-a-b" &&
|
||||
git tag "rm-a-b" &&
|
||||
git merge-tree rm-a-b-base rm-a-b rm-a-b >actual &&
|
||||
test_cmp expected actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'file change A, remove B' '
|
||||
|
@ -260,13 +242,11 @@ EXPECTED
|
|||
'
|
||||
|
||||
test_expect_success 'tree add A, B (same)' '
|
||||
cat >expect <<-\EOF &&
|
||||
EOF
|
||||
git reset --hard initial &&
|
||||
mkdir sub &&
|
||||
test_commit "add sub/file" "sub/file" "file" add-tree-A &&
|
||||
git merge-tree initial add-tree-A add-tree-A >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'tree add A, B (different)' '
|
||||
|
|
|
@ -112,8 +112,7 @@ test_expect_success 'prune: do not prune detached HEAD with no reflog' '
|
|||
# (should be removed and disabled by previous test)
|
||||
test_path_is_missing .git/logs &&
|
||||
git prune -n >prune_actual &&
|
||||
: >prune_expected &&
|
||||
test_cmp prune_actual prune_expected
|
||||
test_must_be_empty prune_actual
|
||||
|
||||
'
|
||||
|
||||
|
|
|
@ -98,9 +98,8 @@ test_expect_success 'repack' '
|
|||
# We first want to check that we do not have any internal errors,
|
||||
# and also that we do not hit the last-ditch cycle-breaking code
|
||||
# in write_object(), which will issue a warning to stderr.
|
||||
>expect &&
|
||||
git repack -ad 2>stderr &&
|
||||
test_cmp expect stderr &&
|
||||
test_must_be_empty stderr &&
|
||||
|
||||
# And then double-check that the resulting pack is usable (i.e.,
|
||||
# we did not fail to notice any cycles). We know we are accessing
|
||||
|
|
|
@ -104,17 +104,17 @@ test_expect_success 'post-update hook arguments' '
|
|||
'
|
||||
|
||||
test_expect_success 'all hook stdin is /dev/null' '
|
||||
! test -s victim.git/update.stdin &&
|
||||
! test -s victim.git/post-update.stdin
|
||||
test_must_be_empty victim.git/update.stdin &&
|
||||
test_must_be_empty victim.git/post-update.stdin
|
||||
'
|
||||
|
||||
test_expect_success 'all *-receive hook args are empty' '
|
||||
! test -s victim.git/pre-receive.args &&
|
||||
! test -s victim.git/post-receive.args
|
||||
test_must_be_empty victim.git/pre-receive.args &&
|
||||
test_must_be_empty victim.git/post-receive.args
|
||||
'
|
||||
|
||||
test_expect_success 'send-pack produced no output' '
|
||||
! test -s send.out
|
||||
test_must_be_empty send.out
|
||||
'
|
||||
|
||||
cat <<EOF >expect
|
||||
|
|
|
@ -161,7 +161,7 @@ test_expect_success 'clone shallow object count' '
|
|||
test_expect_success 'clone shallow object count (part 2)' '
|
||||
sed -e "/^in-pack:/d" -e "/^packs:/d" -e "/^size-pack:/d" \
|
||||
-e "/: 0$/d" count.shallow > count_output &&
|
||||
! test -s count_output
|
||||
test_must_be_empty count_output
|
||||
'
|
||||
|
||||
test_expect_success 'fsck in shallow repo' '
|
||||
|
|
|
@ -44,7 +44,7 @@ test_expect_success 'pushing into a repository using a ref namespace' '
|
|||
test_cmp expected actual &&
|
||||
# Try a namespace with no content
|
||||
git ls-remote "ext::git --namespace=garbage %s ../pushee" >actual &&
|
||||
test_cmp /dev/null actual &&
|
||||
test_must_be_empty actual &&
|
||||
git ls-remote pushee-unnamespaced >actual &&
|
||||
sed -e "s|refs/|refs/namespaces/namespace/refs/|" expected >expected.unnamespaced &&
|
||||
test_cmp expected.unnamespaced actual
|
||||
|
|
|
@ -113,7 +113,7 @@ test_expect_success TTY 'quiet push' '
|
|||
ensure_fresh_upstream &&
|
||||
|
||||
test_terminal git push --quiet --no-progress upstream master 2>&1 | tee output &&
|
||||
test_cmp /dev/null output
|
||||
test_must_be_empty output
|
||||
'
|
||||
|
||||
test_done
|
||||
|
|
|
@ -98,8 +98,8 @@ test_expect_success "fetch alone only fetches superproject" '
|
|||
cd downstream &&
|
||||
git fetch >../actual.out 2>../actual.err
|
||||
) &&
|
||||
! test -s actual.out &&
|
||||
! test -s actual.err
|
||||
test_must_be_empty actual.out &&
|
||||
test_must_be_empty actual.err
|
||||
'
|
||||
|
||||
test_expect_success "fetch --no-recurse-submodules only fetches superproject" '
|
||||
|
@ -107,8 +107,8 @@ test_expect_success "fetch --no-recurse-submodules only fetches superproject" '
|
|||
cd downstream &&
|
||||
git fetch --no-recurse-submodules >../actual.out 2>../actual.err
|
||||
) &&
|
||||
! test -s actual.out &&
|
||||
! test -s actual.err
|
||||
test_must_be_empty actual.out &&
|
||||
test_must_be_empty actual.err
|
||||
'
|
||||
|
||||
test_expect_success "using fetchRecurseSubmodules=true in .gitmodules recurses into submodules" '
|
||||
|
@ -127,8 +127,8 @@ test_expect_success "--no-recurse-submodules overrides .gitmodules config" '
|
|||
cd downstream &&
|
||||
git fetch --no-recurse-submodules >../actual.out 2>../actual.err
|
||||
) &&
|
||||
! test -s actual.out &&
|
||||
! test -s actual.err
|
||||
test_must_be_empty actual.out &&
|
||||
test_must_be_empty actual.err
|
||||
'
|
||||
|
||||
test_expect_success "using fetchRecurseSubmodules=false in .git/config overrides setting in .gitmodules" '
|
||||
|
@ -137,8 +137,8 @@ test_expect_success "using fetchRecurseSubmodules=false in .git/config overrides
|
|||
git config submodule.submodule.fetchRecurseSubmodules false &&
|
||||
git fetch >../actual.out 2>../actual.err
|
||||
) &&
|
||||
! test -s actual.out &&
|
||||
! test -s actual.err
|
||||
test_must_be_empty actual.out &&
|
||||
test_must_be_empty actual.err
|
||||
'
|
||||
|
||||
test_expect_success "--recurse-submodules overrides fetchRecurseSubmodules setting from .git/config" '
|
||||
|
@ -157,8 +157,8 @@ test_expect_success "--quiet propagates to submodules" '
|
|||
cd downstream &&
|
||||
git fetch --recurse-submodules --quiet >../actual.out 2>../actual.err
|
||||
) &&
|
||||
! test -s actual.out &&
|
||||
! test -s actual.err
|
||||
test_must_be_empty actual.out &&
|
||||
test_must_be_empty actual.err
|
||||
'
|
||||
|
||||
test_expect_success "--quiet propagates to parallel submodules" '
|
||||
|
@ -166,8 +166,8 @@ test_expect_success "--quiet propagates to parallel submodules" '
|
|||
cd downstream &&
|
||||
git fetch --recurse-submodules -j 2 --quiet >../actual.out 2>../actual.err
|
||||
) &&
|
||||
! test -s actual.out &&
|
||||
! test -s actual.err
|
||||
test_must_be_empty actual.out &&
|
||||
test_must_be_empty actual.err
|
||||
'
|
||||
|
||||
test_expect_success "--dry-run propagates to submodules" '
|
||||
|
@ -221,8 +221,8 @@ test_expect_success "--no-recurse-submodules overrides config setting" '
|
|||
git config fetch.recurseSubmodules true &&
|
||||
git fetch --no-recurse-submodules >../actual.out 2>../actual.err
|
||||
) &&
|
||||
! test -s actual.out &&
|
||||
! test -s actual.err
|
||||
test_must_be_empty actual.out &&
|
||||
test_must_be_empty actual.err
|
||||
'
|
||||
|
||||
test_expect_success "Recursion doesn't happen when no new commits are fetched in the superproject" '
|
||||
|
@ -235,8 +235,8 @@ test_expect_success "Recursion doesn't happen when no new commits are fetched in
|
|||
git config --unset fetch.recurseSubmodules &&
|
||||
git fetch >../actual.out 2>../actual.err
|
||||
) &&
|
||||
! test -s actual.out &&
|
||||
! test -s actual.err
|
||||
test_must_be_empty actual.out &&
|
||||
test_must_be_empty actual.err
|
||||
'
|
||||
|
||||
test_expect_success "Recursion stops when no new submodule commits are fetched" '
|
||||
|
@ -268,7 +268,7 @@ test_expect_success "Recursion doesn't happen when new superproject commits don'
|
|||
cd downstream &&
|
||||
git fetch >../actual.out 2>../actual.err
|
||||
) &&
|
||||
! test -s actual.out &&
|
||||
test_must_be_empty actual.out &&
|
||||
test_i18ncmp expect.err.file actual.err
|
||||
'
|
||||
|
||||
|
@ -357,8 +357,8 @@ test_expect_success "'--recurse-submodules=on-demand' doesn't recurse when no ne
|
|||
git fetch --recurse-submodules=on-demand >../actual.out 2>../actual.err &&
|
||||
git config --unset fetch.recurseSubmodules
|
||||
) &&
|
||||
! test -s actual.out &&
|
||||
! test -s actual.err
|
||||
test_must_be_empty actual.out &&
|
||||
test_must_be_empty actual.err
|
||||
'
|
||||
|
||||
test_expect_success "'--recurse-submodules=on-demand' recurses as deep as necessary (and ignores config)" '
|
||||
|
@ -402,7 +402,7 @@ test_expect_success "'--recurse-submodules=on-demand' stops when no new submodul
|
|||
cd downstream &&
|
||||
git fetch --recurse-submodules=on-demand >../actual.out 2>../actual.err
|
||||
) &&
|
||||
! test -s actual.out &&
|
||||
test_must_be_empty actual.out &&
|
||||
test_i18ncmp expect.err.file actual.err
|
||||
'
|
||||
|
||||
|
@ -477,7 +477,7 @@ test_expect_success "don't fetch submodule when newly recorded commits are alrea
|
|||
cd downstream &&
|
||||
git fetch >../actual.out 2>../actual.err
|
||||
) &&
|
||||
! test -s actual.out &&
|
||||
test_must_be_empty actual.out &&
|
||||
test_i18ncmp expect.err actual.err &&
|
||||
(
|
||||
cd submodule &&
|
||||
|
@ -495,7 +495,6 @@ test_expect_success "'fetch.recurseSubmodules=on-demand' works also without .git
|
|||
git add submodule &&
|
||||
git rm .gitmodules &&
|
||||
git commit -m "new submodule without .gitmodules" &&
|
||||
printf "" >expect.out &&
|
||||
head2=$(git rev-parse --short HEAD) &&
|
||||
echo "From $pwd/." >expect.err.2 &&
|
||||
echo " $head1..$head2 master -> origin/master" >>expect.err.2 &&
|
||||
|
@ -514,7 +513,7 @@ test_expect_success "'fetch.recurseSubmodules=on-demand' works also without .git
|
|||
git config --unset fetch.recurseSubmodules &&
|
||||
git reset --hard
|
||||
) &&
|
||||
test_i18ncmp expect.out actual.out &&
|
||||
test_must_be_empty actual.out &&
|
||||
test_i18ncmp expect.err.2 actual.err &&
|
||||
git checkout HEAD^ -- .gitmodules &&
|
||||
git add .gitmodules &&
|
||||
|
|
|
@ -210,7 +210,7 @@ test_expect_success TTY 'push --quiet silences status and progress' '
|
|||
cd "$ROOT_PATH"/test_repo_clone &&
|
||||
test_commit quiet &&
|
||||
test_terminal git push --quiet >output 2>&1 &&
|
||||
test_cmp /dev/null output
|
||||
test_must_be_empty output
|
||||
'
|
||||
|
||||
test_expect_success TTY 'push --no-progress silences progress but not status' '
|
||||
|
|
|
@ -51,7 +51,7 @@ test_expect_success 'no-op fetch -v stderr is as expected' '
|
|||
|
||||
test_expect_success 'no-op fetch without "-v" is quiet' '
|
||||
(cd clone && git fetch 2>../stderr) &&
|
||||
! test -s stderr
|
||||
test_must_be_empty stderr
|
||||
'
|
||||
|
||||
test_expect_success 'remote detects correct HEAD' '
|
||||
|
|
|
@ -113,12 +113,11 @@ test_expect_success 'verify blob:limit=1k' '
|
|||
'
|
||||
|
||||
test_expect_success 'verify blob:limit=1m' '
|
||||
cat </dev/null >expected &&
|
||||
git -C r2 rev-list HEAD --quiet --objects --filter-print-omitted --filter=blob:limit=1m \
|
||||
| awk -f print_1.awk \
|
||||
| sed "s/~//" \
|
||||
| sort >observed &&
|
||||
test_cmp observed expected
|
||||
test_must_be_empty observed
|
||||
'
|
||||
|
||||
# Test sparse:path=<path> filter.
|
||||
|
|
|
@ -121,10 +121,9 @@ test_expect_success 'describe --contains defaults to HEAD without commit-ish' '
|
|||
test_cmp expect actual
|
||||
'
|
||||
|
||||
: >err.expect
|
||||
check_describe tags/A --all A^0
|
||||
test_expect_success 'no warning was displayed for A' '
|
||||
test_cmp err.expect err.actual
|
||||
test_must_be_empty err.actual
|
||||
'
|
||||
|
||||
test_expect_success 'rename tag A to Q locally' '
|
||||
|
|
|
@ -97,9 +97,8 @@ test_expect_success 'no-glob option matches literally (bracket)' '
|
|||
'
|
||||
|
||||
test_expect_success 'no-glob option disables :(literal)' '
|
||||
: >expect &&
|
||||
git --literal-pathspecs log --format=%s -- ":(literal)foo" >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'no-glob environment variable works' '
|
||||
|
@ -130,9 +129,8 @@ test_expect_success '**/ works with :(glob)' '
|
|||
'
|
||||
|
||||
test_expect_success '**/ does not work with --noglob-pathspecs' '
|
||||
: >expect &&
|
||||
git --noglob-pathspecs log --format=%s -- "**/bar" >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success '**/ works with :(glob) and --noglob-pathspecs' '
|
||||
|
@ -154,9 +152,8 @@ test_expect_success '**/ works with --glob-pathspecs' '
|
|||
'
|
||||
|
||||
test_expect_success '**/ does not work with :(literal) and --glob-pathspecs' '
|
||||
: >expect &&
|
||||
git --glob-pathspecs log --format=%s -- ":(literal)**/bar" >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_done
|
||||
|
|
|
@ -366,8 +366,6 @@ test_expect_success 'merge-msg with nothing to merge' '
|
|||
test_unconfig merge.log &&
|
||||
test_config merge.summary yes &&
|
||||
|
||||
>empty &&
|
||||
|
||||
(
|
||||
cd remote &&
|
||||
git checkout -b unrelated &&
|
||||
|
@ -376,7 +374,7 @@ test_expect_success 'merge-msg with nothing to merge' '
|
|||
git fmt-merge-msg <.git/FETCH_HEAD >../actual
|
||||
) &&
|
||||
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'merge-msg tag' '
|
||||
|
|
|
@ -384,7 +384,7 @@ test_expect_success 'mv does not complain when no .gitmodules file is found' '
|
|||
entry="$(git ls-files --stage sub | cut -f 1)" &&
|
||||
mkdir mod &&
|
||||
git mv sub mod/sub 2>actual.err &&
|
||||
! test -s actual.err &&
|
||||
test_must_be_empty actual.err &&
|
||||
! test -e sub &&
|
||||
[ "$entry" = "$(git ls-files --stage mod/sub | cut -f 1)" ] &&
|
||||
(
|
||||
|
@ -408,7 +408,7 @@ test_expect_success 'mv will error out on a modified .gitmodules file unless sta
|
|||
git diff-files --quiet -- sub &&
|
||||
git add .gitmodules &&
|
||||
git mv sub mod/sub 2>actual.err &&
|
||||
! test -s actual.err &&
|
||||
test_must_be_empty actual.err &&
|
||||
! test -e sub &&
|
||||
[ "$entry" = "$(git ls-files --stage mod/sub | cut -f 1)" ] &&
|
||||
(
|
||||
|
@ -469,7 +469,7 @@ test_expect_success 'checking out a commit before submodule moved needs manual u
|
|||
git update-index --refresh &&
|
||||
git diff-files --quiet -- sub .gitmodules &&
|
||||
git status -s sub2 >actual &&
|
||||
! test -s actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'mv -k does not accidentally destroy submodules' '
|
||||
|
|
|
@ -325,11 +325,10 @@ test_expect_success \
|
|||
test_cmp expect actual
|
||||
'
|
||||
|
||||
>expect
|
||||
test_expect_success \
|
||||
'listing tags using v.* should print nothing because none have v.' '
|
||||
git tag -l "v.*" > actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
cat >expect <<EOF
|
||||
|
@ -1511,12 +1510,9 @@ test_expect_success 'inverse of the last test, with --no-contains' "
|
|||
test_cmp expected actual
|
||||
"
|
||||
|
||||
cat > expected <<EOF
|
||||
EOF
|
||||
|
||||
test_expect_success 'checking that third commit has no tags' "
|
||||
git tag -l --contains $hash3 v* >actual &&
|
||||
test_cmp expected actual
|
||||
test_must_be_empty actual
|
||||
"
|
||||
|
||||
cat > expected <<EOF
|
||||
|
|
|
@ -57,9 +57,8 @@ test_expect_success 'git grep -ah ina a' '
|
|||
'
|
||||
|
||||
test_expect_success 'git grep -I ina a' '
|
||||
: >expect &&
|
||||
test_must_fail git grep -I ina a >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'git grep -c ina a' '
|
||||
|
@ -81,9 +80,8 @@ test_expect_success 'git grep -L bar a' '
|
|||
'
|
||||
|
||||
test_expect_success 'git grep -q ina a' '
|
||||
: >expect &&
|
||||
git grep -q ina a >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'git grep -F ile a' '
|
||||
|
|
|
@ -364,11 +364,8 @@ test_expect_success 'verify upstream fields in branch header' '
|
|||
test_cmp expect actual &&
|
||||
|
||||
## Repeat the above but without --branch.
|
||||
cat >expect <<-EOF &&
|
||||
EOF
|
||||
|
||||
git status --porcelain=v2 --untracked-files=all >actual &&
|
||||
test_cmp expect actual &&
|
||||
test_must_be_empty actual &&
|
||||
|
||||
## Test upstream-gone case. Fake this by pointing origin/master at
|
||||
## a non-existing commit.
|
||||
|
|
|
@ -116,9 +116,8 @@ test_expect_success "checkout -m with dirty tree" '
|
|||
git diff --name-status side >current.side &&
|
||||
test_cmp expect.side current.side &&
|
||||
|
||||
: >expect.index &&
|
||||
git diff --cached >current.index &&
|
||||
test_cmp expect.index current.index
|
||||
test_must_be_empty current.index
|
||||
'
|
||||
|
||||
test_expect_success "checkout -m with dirty tree, renamed" '
|
||||
|
@ -139,7 +138,7 @@ test_expect_success "checkout -m with dirty tree, renamed" '
|
|||
test_cmp expect uno &&
|
||||
! test -f one &&
|
||||
git diff --cached >current &&
|
||||
! test -s current
|
||||
test_must_be_empty current
|
||||
|
||||
'
|
||||
|
||||
|
@ -163,7 +162,7 @@ test_expect_success 'checkout -m with merge conflict' '
|
|||
fill d2 aT d7 aS >expect &&
|
||||
test_cmp current expect &&
|
||||
git diff --cached two >current &&
|
||||
! test -s current
|
||||
test_must_be_empty current
|
||||
'
|
||||
|
||||
test_expect_success 'format of merge conflict from checkout -m' '
|
||||
|
|
|
@ -101,7 +101,6 @@ inspect() {
|
|||
|
||||
test_expect_success 'submodule add' '
|
||||
echo "refs/heads/master" >expect &&
|
||||
>empty &&
|
||||
|
||||
(
|
||||
cd addtest &&
|
||||
|
@ -123,7 +122,7 @@ test_expect_success 'submodule add' '
|
|||
inspect addtest/submod ../.. &&
|
||||
test_cmp expect heads &&
|
||||
test_cmp expect head &&
|
||||
test_cmp empty untracked
|
||||
test_must_be_empty untracked
|
||||
'
|
||||
|
||||
test_expect_success 'setup parent and one repository' '
|
||||
|
@ -189,7 +188,6 @@ test_expect_success 'submodule add --branch' '
|
|||
refs/heads/initial
|
||||
refs/heads/master
|
||||
EOF
|
||||
>empty &&
|
||||
|
||||
(
|
||||
cd addtest &&
|
||||
|
@ -202,12 +200,11 @@ test_expect_success 'submodule add --branch' '
|
|||
inspect addtest/submod-branch ../.. &&
|
||||
test_cmp expect-heads heads &&
|
||||
test_cmp expect-head head &&
|
||||
test_cmp empty untracked
|
||||
test_must_be_empty untracked
|
||||
'
|
||||
|
||||
test_expect_success 'submodule add with ./ in path' '
|
||||
echo "refs/heads/master" >expect &&
|
||||
>empty &&
|
||||
|
||||
(
|
||||
cd addtest &&
|
||||
|
@ -219,12 +216,11 @@ test_expect_success 'submodule add with ./ in path' '
|
|||
inspect addtest/dotsubmod/frotz ../../.. &&
|
||||
test_cmp expect heads &&
|
||||
test_cmp expect head &&
|
||||
test_cmp empty untracked
|
||||
test_must_be_empty untracked
|
||||
'
|
||||
|
||||
test_expect_success 'submodule add with /././ in path' '
|
||||
echo "refs/heads/master" >expect &&
|
||||
>empty &&
|
||||
|
||||
(
|
||||
cd addtest &&
|
||||
|
@ -236,12 +232,11 @@ test_expect_success 'submodule add with /././ in path' '
|
|||
inspect addtest/dotslashdotsubmod/frotz ../../.. &&
|
||||
test_cmp expect heads &&
|
||||
test_cmp expect head &&
|
||||
test_cmp empty untracked
|
||||
test_must_be_empty untracked
|
||||
'
|
||||
|
||||
test_expect_success 'submodule add with // in path' '
|
||||
echo "refs/heads/master" >expect &&
|
||||
>empty &&
|
||||
|
||||
(
|
||||
cd addtest &&
|
||||
|
@ -253,12 +248,11 @@ test_expect_success 'submodule add with // in path' '
|
|||
inspect addtest/slashslashsubmod/frotz ../../.. &&
|
||||
test_cmp expect heads &&
|
||||
test_cmp expect head &&
|
||||
test_cmp empty untracked
|
||||
test_must_be_empty untracked
|
||||
'
|
||||
|
||||
test_expect_success 'submodule add with /.. in path' '
|
||||
echo "refs/heads/master" >expect &&
|
||||
>empty &&
|
||||
|
||||
(
|
||||
cd addtest &&
|
||||
|
@ -270,12 +264,11 @@ test_expect_success 'submodule add with /.. in path' '
|
|||
inspect addtest/realsubmod ../.. &&
|
||||
test_cmp expect heads &&
|
||||
test_cmp expect head &&
|
||||
test_cmp empty untracked
|
||||
test_must_be_empty untracked
|
||||
'
|
||||
|
||||
test_expect_success 'submodule add with ./, /.. and // in path' '
|
||||
echo "refs/heads/master" >expect &&
|
||||
>empty &&
|
||||
|
||||
(
|
||||
cd addtest &&
|
||||
|
@ -287,7 +280,7 @@ test_expect_success 'submodule add with ./, /.. and // in path' '
|
|||
inspect addtest/realsubmod2 ../.. &&
|
||||
test_cmp expect heads &&
|
||||
test_cmp expect head &&
|
||||
test_cmp empty untracked
|
||||
test_must_be_empty untracked
|
||||
'
|
||||
|
||||
test_expect_success !CYGWIN 'submodule add with \\ in path' '
|
||||
|
@ -306,7 +299,6 @@ test_expect_success !CYGWIN 'submodule add with \\ in path' '
|
|||
|
||||
test_expect_success 'submodule add in subdirectory' '
|
||||
echo "refs/heads/master" >expect &&
|
||||
>empty &&
|
||||
|
||||
mkdir addtest/sub &&
|
||||
(
|
||||
|
@ -319,7 +311,7 @@ test_expect_success 'submodule add in subdirectory' '
|
|||
inspect addtest/realsubmod3 ../.. &&
|
||||
test_cmp expect heads &&
|
||||
test_cmp expect head &&
|
||||
test_cmp empty untracked
|
||||
test_must_be_empty untracked
|
||||
'
|
||||
|
||||
test_expect_success 'submodule add in subdirectory with relative path should fail' '
|
||||
|
@ -502,8 +494,6 @@ test_expect_success 'checkout superproject with subproject already present' '
|
|||
'
|
||||
|
||||
test_expect_success 'apply submodule diff' '
|
||||
>empty &&
|
||||
|
||||
git branch second &&
|
||||
(
|
||||
cd init &&
|
||||
|
@ -518,7 +508,7 @@ test_expect_success 'apply submodule diff' '
|
|||
git apply --index P.diff &&
|
||||
|
||||
git diff --cached master >staged &&
|
||||
test_cmp empty staged
|
||||
test_must_be_empty staged
|
||||
'
|
||||
|
||||
test_expect_success 'update --init' '
|
||||
|
|
|
@ -300,7 +300,7 @@ test_expect_success 'should not fail in an empty repo' "
|
|||
git init xyzzy &&
|
||||
cd xyzzy &&
|
||||
git submodule summary >output 2>&1 &&
|
||||
test_cmp output /dev/null
|
||||
test_must_be_empty output
|
||||
"
|
||||
|
||||
test_done
|
||||
|
|
|
@ -582,13 +582,11 @@ test_expect_success 'same tree (merge and amend merge)' '
|
|||
|
||||
git merge -s ours side -m "empty ok" &&
|
||||
git diff HEAD^ HEAD >actual &&
|
||||
: >expected &&
|
||||
test_cmp expected actual &&
|
||||
test_must_be_empty actual &&
|
||||
|
||||
git commit --amend -m "empty really ok" &&
|
||||
git diff HEAD^ HEAD >actual &&
|
||||
: >expected &&
|
||||
test_cmp expected actual
|
||||
test_must_be_empty actual
|
||||
|
||||
'
|
||||
|
||||
|
|
|
@ -38,7 +38,6 @@ printf '%s\n' '1 X' 2 3 4 5 6 7 8 9 >result.1
|
|||
printf '%s\n' '1 X' 2 3 4 '5 X' 6 7 8 9 >result.1-5
|
||||
printf '%s\n' '1 X' 2 3 4 '5 X' 6 7 8 '9 X' >result.1-5-9
|
||||
printf '%s\n' 1 2 3 4 5 6 7 8 '9 Z' >result.9z
|
||||
>empty
|
||||
|
||||
create_merge_msgs () {
|
||||
echo "Merge tag 'c2'" >msg.1-5 &&
|
||||
|
@ -58,8 +57,6 @@ create_merge_msgs () {
|
|||
echo &&
|
||||
git log --no-merges ^HEAD c2 c3
|
||||
} >squash.1-5-9 &&
|
||||
: >msg.nologff &&
|
||||
: >msg.nolognoff &&
|
||||
{
|
||||
echo "* tag 'c3':" &&
|
||||
echo " commit 3"
|
||||
|
@ -519,7 +516,7 @@ test_expect_success 'tolerate unknown values for merge.ff' '
|
|||
test_tick &&
|
||||
git merge c1 2>message &&
|
||||
verify_head "$c1" &&
|
||||
test_cmp empty message
|
||||
test_must_be_empty message
|
||||
'
|
||||
|
||||
test_expect_success 'combining --squash and --no-ff is refused' '
|
||||
|
@ -551,13 +548,13 @@ test_expect_success 'merge log message' '
|
|||
git reset --hard c0 &&
|
||||
git merge --no-log c2 &&
|
||||
git show -s --pretty=format:%b HEAD >msg.act &&
|
||||
test_cmp msg.nologff msg.act &&
|
||||
test_must_be_empty msg.act &&
|
||||
|
||||
git reset --hard c0 &&
|
||||
test_config branch.master.mergeoptions "--no-ff" &&
|
||||
git merge --no-log c2 &&
|
||||
git show -s --pretty=format:%b HEAD >msg.act &&
|
||||
test_cmp msg.nolognoff msg.act &&
|
||||
test_must_be_empty msg.act &&
|
||||
|
||||
git merge --log c3 &&
|
||||
git show -s --pretty=format:%b HEAD >msg.act &&
|
||||
|
|
|
@ -328,9 +328,8 @@ test_expect_success 'mergetool produces no errors when keepBackup is used' '
|
|||
git checkout -b test$test_count move-to-c &&
|
||||
test_config mergetool.keepBackup true &&
|
||||
test_must_fail git merge move-to-b &&
|
||||
: >expect &&
|
||||
echo d | git mergetool a/a/file.txt 2>actual &&
|
||||
test_cmp expect actual &&
|
||||
test_must_be_empty actual &&
|
||||
! test -d a
|
||||
'
|
||||
|
||||
|
|
|
@ -217,9 +217,8 @@ do
|
|||
'
|
||||
|
||||
test_expect_success "grep -w $L (w)" '
|
||||
: >expected &&
|
||||
test_must_fail git grep -n -w -e "^w" $H >actual &&
|
||||
test_cmp expected actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success "grep -w $L (x)" '
|
||||
|
@ -239,26 +238,24 @@ do
|
|||
'
|
||||
|
||||
test_expect_success "grep -w $L (y-2)" '
|
||||
: >expected &&
|
||||
if git grep -n -w -e "^y y" $H >actual
|
||||
then
|
||||
echo should not have matched
|
||||
cat actual
|
||||
false
|
||||
else
|
||||
test_cmp expected actual
|
||||
test_must_be_empty actual
|
||||
fi
|
||||
'
|
||||
|
||||
test_expect_success "grep -w $L (z)" '
|
||||
: >expected &&
|
||||
if git grep -n -w -e "^z" $H >actual
|
||||
then
|
||||
echo should not have matched
|
||||
cat actual
|
||||
false
|
||||
else
|
||||
test_cmp expected actual
|
||||
test_must_be_empty actual
|
||||
fi
|
||||
'
|
||||
|
||||
|
@ -498,7 +495,7 @@ test_expect_success 'grep -L -C' '
|
|||
|
||||
test_expect_success 'grep --files-without-match --quiet' '
|
||||
git grep --files-without-match --quiet nonexistent_string >actual &&
|
||||
test_cmp /dev/null actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
cat >expected <<EOF
|
||||
|
@ -619,11 +616,10 @@ z:zzz
|
|||
EOF
|
||||
|
||||
test_expect_success 'grep -q, silently report matches' '
|
||||
>empty &&
|
||||
git grep -q mmap >actual &&
|
||||
test_cmp empty actual &&
|
||||
test_must_be_empty actual &&
|
||||
test_must_fail git grep -q qfwfq >actual &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'grep -C1 hunk mark between files' '
|
||||
|
@ -716,8 +712,7 @@ test_expect_success 'log grep (9)' '
|
|||
|
||||
test_expect_success 'log grep (9)' '
|
||||
git log -g --grep-reflog="commit: third" --author="non-existent" --pretty=tformat:%s >actual &&
|
||||
: >expect &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'log --grep-reflog can only be used under -g' '
|
||||
|
@ -807,15 +802,13 @@ test_expect_success 'log --all-match --grep --grep --author takes intersection'
|
|||
'
|
||||
|
||||
test_expect_success 'log --author does not search in timestamp' '
|
||||
: >expect &&
|
||||
git log --author="$GIT_AUTHOR_DATE" >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'log --committer does not search in timestamp' '
|
||||
: >expect &&
|
||||
git log --committer="$GIT_COMMITTER_DATE" >actual &&
|
||||
test_cmp expect actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'grep with CE_VALID file' '
|
||||
|
@ -956,7 +949,7 @@ test_expect_success 'grep from a subdirectory to search wider area (2)' '
|
|||
(
|
||||
cd s &&
|
||||
test_expect_code 1 git grep xxyyzz .. >out &&
|
||||
! test -s out
|
||||
test_must_be_empty out
|
||||
)
|
||||
'
|
||||
|
||||
|
@ -1065,13 +1058,12 @@ test_expect_success 'inside git repository but with --no-index' '
|
|||
echo ".gitignore:.*o*" &&
|
||||
cat is/expect.unignored
|
||||
} >is/expect.full &&
|
||||
: >is/expect.empty &&
|
||||
echo file2:world >is/expect.sub &&
|
||||
(
|
||||
cd is/git &&
|
||||
git init &&
|
||||
test_must_fail git grep o >../actual.full &&
|
||||
test_cmp ../expect.empty ../actual.full &&
|
||||
test_must_be_empty ../actual.full &&
|
||||
|
||||
git grep --untracked o >../actual.unignored &&
|
||||
test_cmp ../expect.unignored ../actual.unignored &&
|
||||
|
@ -1084,7 +1076,7 @@ test_expect_success 'inside git repository but with --no-index' '
|
|||
|
||||
cd sub &&
|
||||
test_must_fail git grep o >../../actual.sub &&
|
||||
test_cmp ../../expect.empty ../../actual.sub &&
|
||||
test_must_be_empty ../../actual.sub &&
|
||||
|
||||
git grep --no-index o >../../actual.sub &&
|
||||
test_cmp ../../expect.sub ../../actual.sub &&
|
||||
|
@ -1250,10 +1242,9 @@ test_expect_success !PCRE 'grep -P pattern errors without PCRE' '
|
|||
'
|
||||
|
||||
test_expect_success 'grep pattern with grep.extendedRegexp=true' '
|
||||
>empty &&
|
||||
test_must_fail git -c grep.extendedregexp=true \
|
||||
grep "\p{Ps}.*?\p{Pe}" hello.c >actual &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success PCRE 'grep -P pattern with grep.extendedRegexp=true' '
|
||||
|
|
|
@ -51,14 +51,13 @@ test_expect_success SIMPLEPAGER 'git grep -O' '
|
|||
grep.h
|
||||
EOF
|
||||
echo grep.h >expect.notless &&
|
||||
>empty &&
|
||||
|
||||
PATH=.:$PATH git grep -O GREP_PATTERN >out &&
|
||||
{
|
||||
test_cmp expect.less pager-args ||
|
||||
test_cmp expect.notless pager-args
|
||||
} &&
|
||||
test_cmp empty out
|
||||
test_must_be_empty out
|
||||
'
|
||||
|
||||
test_expect_success 'git grep -O --cached' '
|
||||
|
@ -72,7 +71,6 @@ test_expect_success 'git grep -O --no-index' '
|
|||
grep.h
|
||||
untracked
|
||||
EOF
|
||||
>empty &&
|
||||
|
||||
(
|
||||
GIT_PAGER='\''printf "%s\n" >pager-args'\'' &&
|
||||
|
@ -80,7 +78,7 @@ test_expect_success 'git grep -O --no-index' '
|
|||
git grep --no-index -O GREP_PATTERN >out
|
||||
) &&
|
||||
test_cmp expect pager-args &&
|
||||
test_cmp empty out
|
||||
test_must_be_empty out
|
||||
'
|
||||
|
||||
test_expect_success 'setup: fake "less"' '
|
||||
|
@ -96,15 +94,14 @@ test_expect_success 'git grep -O jumps to line in less' '
|
|||
+/*GREP_PATTERN
|
||||
grep.h
|
||||
EOF
|
||||
>empty &&
|
||||
|
||||
GIT_PAGER=./less git grep -O GREP_PATTERN >out &&
|
||||
test_cmp expect actual &&
|
||||
test_cmp empty out &&
|
||||
test_must_be_empty out &&
|
||||
|
||||
git grep -O./less GREP_PATTERN >out2 &&
|
||||
test_cmp expect actual &&
|
||||
test_cmp empty out2
|
||||
test_must_be_empty out2
|
||||
'
|
||||
|
||||
test_expect_success 'modified file' '
|
||||
|
@ -122,7 +119,7 @@ test_expect_success 'modified file' '
|
|||
test_when_finished "git checkout HEAD unrelated" &&
|
||||
GIT_PAGER=./less git grep -F -O "enum grep_pat_token" >out &&
|
||||
test_cmp expect actual &&
|
||||
test_cmp empty out
|
||||
test_must_be_empty out
|
||||
'
|
||||
|
||||
test_expect_success 'copes with color settings' '
|
||||
|
@ -138,7 +135,6 @@ test_expect_success 'copes with color settings' '
|
|||
test_expect_success 'run from subdir' '
|
||||
rm -f actual &&
|
||||
echo grep.c >expect &&
|
||||
>empty &&
|
||||
|
||||
(
|
||||
cd subdir &&
|
||||
|
@ -156,8 +152,8 @@ test_expect_success 'run from subdir' '
|
|||
;;
|
||||
esac &&
|
||||
test_cmp expect args &&
|
||||
test_cmp empty out &&
|
||||
test_cmp empty out2
|
||||
test_must_be_empty out &&
|
||||
test_must_be_empty out2
|
||||
'
|
||||
|
||||
test_done
|
||||
|
|
|
@ -47,7 +47,7 @@ test_expect_success 'cat-file --textconv --path=<path> works' '
|
|||
test_expect_success '--path=<path> complains without --textconv/--filters' '
|
||||
sha1=$(git rev-parse -q --verify HEAD:world.txt) &&
|
||||
test_must_fail git cat-file --path=hello.txt blob $sha1 >actual 2>err &&
|
||||
test ! -s actual &&
|
||||
test_must_be_empty actual &&
|
||||
grep "path.*needs.*filters" err
|
||||
'
|
||||
|
||||
|
|
|
@ -18,7 +18,7 @@ test_expect_success 'reject empty delta' '
|
|||
test_expect_success 'delta can empty file' '
|
||||
printf "SVNQ" | q_to_nul >clear.delta &&
|
||||
test-svn-fe -d preimage clear.delta 4 >actual &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'reject svndiff2' '
|
||||
|
@ -29,7 +29,7 @@ test_expect_success 'reject svndiff2' '
|
|||
test_expect_success 'one-window empty delta' '
|
||||
printf "SVNQ%s" "QQQQQ" | q_to_nul >clear.onewindow &&
|
||||
test-svn-fe -d preimage clear.onewindow 9 >actual &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'reject incomplete window header' '
|
||||
|
@ -50,7 +50,7 @@ test_expect_success 'two-window empty delta' '
|
|||
printf "SVNQ%s%s" "QQQQQ" "QQQQQ" | q_to_nul >clear.twowindow &&
|
||||
test-svn-fe -d preimage clear.twowindow 14 >actual &&
|
||||
test_must_fail test-svn-fe -d preimage clear.twowindow 13 &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'noisy zeroes' '
|
||||
|
@ -60,7 +60,7 @@ test_expect_success 'noisy zeroes' '
|
|||
q_to_nul >clear.noisy &&
|
||||
len=$(wc -c <clear.noisy) &&
|
||||
test-svn-fe -d preimage clear.noisy $len &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'reject variable-length int in magic' '
|
||||
|
@ -83,7 +83,7 @@ test_expect_success 'reject truncated integer' '
|
|||
test_expect_success 'nonempty (but unused) preimage view' '
|
||||
printf "SVNQ%b" "Q\003QQQ" | q_to_nul >clear.readpreimage &&
|
||||
test-svn-fe -d preimage clear.readpreimage 9 >actual &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'preimage view: right endpoint cannot backtrack' '
|
||||
|
@ -99,7 +99,7 @@ test_expect_success 'preimage view: left endpoint can advance' '
|
|||
q_to_nul >clear.shrinkbacktrack &&
|
||||
test-svn-fe -d preimage clear.preshrink 14 >actual &&
|
||||
test_must_fail test-svn-fe -d preimage clear.shrinkbacktrack 14 &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'preimage view: offsets compared by value' '
|
||||
|
@ -109,7 +109,7 @@ test_expect_success 'preimage view: offsets compared by value' '
|
|||
q_to_nul >clear.noisyadvance &&
|
||||
test_must_fail test-svn-fe -d preimage clear.noisybacktrack 15 &&
|
||||
test-svn-fe -d preimage clear.noisyadvance 15 &&
|
||||
test_cmp empty actual
|
||||
test_must_be_empty actual
|
||||
'
|
||||
|
||||
test_expect_success 'preimage view: reject truncated preimage' '
|
||||
|
|
|
@ -85,7 +85,7 @@ EOF
|
|||
test_expect_success 'clone using git svn' 'git svn clone -r1 "$svnrepo" x'
|
||||
test_expect_success 'enable broken symlink workaround' \
|
||||
'(cd x && git config svn.brokenSymlinkWorkaround true)'
|
||||
test_expect_success '"bar" is an empty file' 'test -f x/bar && ! test -s x/bar'
|
||||
test_expect_success '"bar" is an empty file' 'test_must_be_empty x/bar'
|
||||
test_expect_success 'get "bar" => symlink fix from svn' \
|
||||
'(cd x && git svn rebase)'
|
||||
test_expect_success SYMLINKS '"bar" becomes a symlink' 'test -h x/bar'
|
||||
|
@ -94,14 +94,14 @@ test_expect_success SYMLINKS '"bar" becomes a symlink' 'test -h x/bar'
|
|||
test_expect_success 'clone using git svn' 'git svn clone -r1 "$svnrepo" y'
|
||||
test_expect_success 'disable broken symlink workaround' \
|
||||
'(cd y && git config svn.brokenSymlinkWorkaround false)'
|
||||
test_expect_success '"bar" is an empty file' 'test -f y/bar && ! test -s y/bar'
|
||||
test_expect_success '"bar" is an empty file' 'test_must_be_empty y/bar'
|
||||
test_expect_success 'get "bar" => symlink fix from svn' \
|
||||
'(cd y && git svn rebase)'
|
||||
test_expect_success '"bar" does not become a symlink' '! test -L y/bar'
|
||||
|
||||
# svn.brokenSymlinkWorkaround is unset
|
||||
test_expect_success 'clone using git svn' 'git svn clone -r1 "$svnrepo" z'
|
||||
test_expect_success '"bar" is an empty file' 'test -f z/bar && ! test -s z/bar'
|
||||
test_expect_success '"bar" is an empty file' 'test_must_be_empty z/bar'
|
||||
test_expect_success 'get "bar" => symlink fix from svn' \
|
||||
'(cd z && git svn rebase)'
|
||||
test_expect_success '"bar" does not become a symlink' '! test -L z/bar'
|
||||
|
|
|
@ -13,8 +13,7 @@ test_expect_success 'test that b1 exists and is empty' '
|
|||
(
|
||||
cd x &&
|
||||
git reset --hard origin/branch-c &&
|
||||
test -f b1 &&
|
||||
! test -s b1
|
||||
test_must_be_empty b1
|
||||
)
|
||||
'
|
||||
|
||||
|
|
|
@ -43,11 +43,11 @@ check_entries () {
|
|||
sed -ne '/^\//p' "$1/CVS/Entries" | sort | cut -d/ -f2,3,5 >actual
|
||||
if test -z "$2"
|
||||
then
|
||||
>expected
|
||||
test_must_be_empty actual
|
||||
else
|
||||
printf '%s\n' "$2" | tr '|' '\012' >expected
|
||||
test_cmp expected actual
|
||||
fi
|
||||
test_cmp expected actual
|
||||
}
|
||||
|
||||
test_expect_success \
|
||||
|
|
|
@ -310,7 +310,7 @@ test_expect_success SYMLINKS 'empty symlink target' '
|
|||
# p4 to sync here will make it generate errors.
|
||||
cd "$cli" &&
|
||||
p4 print -q //depot/empty-symlink#2 >out &&
|
||||
test ! -s out
|
||||
test_must_be_empty out
|
||||
) &&
|
||||
test_when_finished cleanup_git &&
|
||||
|
||||
|
|
|
@ -513,10 +513,9 @@ test_expect_success 'prompt - format string starting with dash' '
|
|||
|
||||
test_expect_success 'prompt - pc mode' '
|
||||
printf "BEFORE: (\${__git_ps1_branch_name}):AFTER\\nmaster" >expected &&
|
||||
printf "" >expected_output &&
|
||||
(
|
||||
__git_ps1 "BEFORE:" ":AFTER" >"$actual" &&
|
||||
test_cmp expected_output "$actual" &&
|
||||
test_must_be_empty "$actual" &&
|
||||
printf "%s\\n%s" "$PS1" "${__git_ps1_branch_name}" >"$actual"
|
||||
) &&
|
||||
test_cmp expected "$actual"
|
||||
|
@ -712,13 +711,12 @@ test_expect_success 'prompt - hide if pwd ignored - env var set, config disabled
|
|||
'
|
||||
|
||||
test_expect_success 'prompt - hide if pwd ignored - env var set, config unset' '
|
||||
printf "" >expected &&
|
||||
(
|
||||
cd ignored_dir &&
|
||||
GIT_PS1_HIDE_IF_PWD_IGNORED=y &&
|
||||
__git_ps1 >"$actual"
|
||||
) &&
|
||||
test_cmp expected "$actual"
|
||||
test_must_be_empty "$actual"
|
||||
'
|
||||
|
||||
test_expect_success 'prompt - hide if pwd ignored - env var set, config unset, pc mode' '
|
||||
|
|
Загрузка…
Ссылка в новой задаче