Merge branch 'jk/test-verbose-no-more'
Retire "verbose" helper function from the test framework. * jk/test-verbose-no-more: t: drop "verbose" helper function t7001: use "ls-files --format" instead of "cut" t7001: avoid git on upstream of pipe
This commit is contained in:
@ -125,7 +125,7 @@ test_expect_success 'update with autocrlf=input' '
|
|||||||
munge_cr append dir/two &&
|
munge_cr append dir/two &&
|
||||||
git update-index -- one dir/two &&
|
git update-index -- one dir/two &&
|
||||||
differs=$(git diff-index --cached HEAD) &&
|
differs=$(git diff-index --cached HEAD) &&
|
||||||
verbose test -z "$differs"
|
test -z "$differs"
|
||||||
|
|
||||||
'
|
'
|
||||||
|
|
||||||
@ -138,7 +138,7 @@ test_expect_success 'update with autocrlf=true' '
|
|||||||
munge_cr append dir/two &&
|
munge_cr append dir/two &&
|
||||||
git update-index -- one dir/two &&
|
git update-index -- one dir/two &&
|
||||||
differs=$(git diff-index --cached HEAD) &&
|
differs=$(git diff-index --cached HEAD) &&
|
||||||
verbose test -z "$differs"
|
test -z "$differs"
|
||||||
|
|
||||||
'
|
'
|
||||||
|
|
||||||
@ -153,7 +153,7 @@ test_expect_success 'checkout with autocrlf=true' '
|
|||||||
test "$one" = $(git hash-object --stdin <one) &&
|
test "$one" = $(git hash-object --stdin <one) &&
|
||||||
test "$two" = $(git hash-object --stdin <dir/two) &&
|
test "$two" = $(git hash-object --stdin <dir/two) &&
|
||||||
differs=$(git diff-index --cached HEAD) &&
|
differs=$(git diff-index --cached HEAD) &&
|
||||||
verbose test -z "$differs"
|
test -z "$differs"
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'checkout with autocrlf=input' '
|
test_expect_success 'checkout with autocrlf=input' '
|
||||||
@ -167,7 +167,7 @@ test_expect_success 'checkout with autocrlf=input' '
|
|||||||
test "$one" = $(git hash-object --stdin <one) &&
|
test "$one" = $(git hash-object --stdin <one) &&
|
||||||
test "$two" = $(git hash-object --stdin <dir/two) &&
|
test "$two" = $(git hash-object --stdin <dir/two) &&
|
||||||
differs=$(git diff-index --cached HEAD) &&
|
differs=$(git diff-index --cached HEAD) &&
|
||||||
verbose test -z "$differs"
|
test -z "$differs"
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'apply patch (autocrlf=input)' '
|
test_expect_success 'apply patch (autocrlf=input)' '
|
||||||
@ -177,7 +177,7 @@ test_expect_success 'apply patch (autocrlf=input)' '
|
|||||||
git read-tree --reset -u HEAD &&
|
git read-tree --reset -u HEAD &&
|
||||||
|
|
||||||
git apply patch.file &&
|
git apply patch.file &&
|
||||||
verbose test "$patched" = "$(git hash-object --stdin <one)"
|
test "$patched" = "$(git hash-object --stdin <one)"
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'apply patch --cached (autocrlf=input)' '
|
test_expect_success 'apply patch --cached (autocrlf=input)' '
|
||||||
@ -187,7 +187,7 @@ test_expect_success 'apply patch --cached (autocrlf=input)' '
|
|||||||
git read-tree --reset -u HEAD &&
|
git read-tree --reset -u HEAD &&
|
||||||
|
|
||||||
git apply --cached patch.file &&
|
git apply --cached patch.file &&
|
||||||
verbose test "$patched" = $(git rev-parse :one)
|
test "$patched" = $(git rev-parse :one)
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'apply patch --index (autocrlf=input)' '
|
test_expect_success 'apply patch --index (autocrlf=input)' '
|
||||||
@ -197,8 +197,8 @@ test_expect_success 'apply patch --index (autocrlf=input)' '
|
|||||||
git read-tree --reset -u HEAD &&
|
git read-tree --reset -u HEAD &&
|
||||||
|
|
||||||
git apply --index patch.file &&
|
git apply --index patch.file &&
|
||||||
verbose test "$patched" = $(git rev-parse :one) &&
|
test "$patched" = $(git rev-parse :one) &&
|
||||||
verbose test "$patched" = $(git hash-object --stdin <one)
|
test "$patched" = $(git hash-object --stdin <one)
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'apply patch (autocrlf=true)' '
|
test_expect_success 'apply patch (autocrlf=true)' '
|
||||||
@ -208,7 +208,7 @@ test_expect_success 'apply patch (autocrlf=true)' '
|
|||||||
git read-tree --reset -u HEAD &&
|
git read-tree --reset -u HEAD &&
|
||||||
|
|
||||||
git apply patch.file &&
|
git apply patch.file &&
|
||||||
verbose test "$patched" = "$(remove_cr <one | git hash-object --stdin)"
|
test "$patched" = "$(remove_cr <one | git hash-object --stdin)"
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'apply patch --cached (autocrlf=true)' '
|
test_expect_success 'apply patch --cached (autocrlf=true)' '
|
||||||
@ -218,7 +218,7 @@ test_expect_success 'apply patch --cached (autocrlf=true)' '
|
|||||||
git read-tree --reset -u HEAD &&
|
git read-tree --reset -u HEAD &&
|
||||||
|
|
||||||
git apply --cached patch.file &&
|
git apply --cached patch.file &&
|
||||||
verbose test "$patched" = $(git rev-parse :one)
|
test "$patched" = $(git rev-parse :one)
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'apply patch --index (autocrlf=true)' '
|
test_expect_success 'apply patch --index (autocrlf=true)' '
|
||||||
@ -228,8 +228,8 @@ test_expect_success 'apply patch --index (autocrlf=true)' '
|
|||||||
git read-tree --reset -u HEAD &&
|
git read-tree --reset -u HEAD &&
|
||||||
|
|
||||||
git apply --index patch.file &&
|
git apply --index patch.file &&
|
||||||
verbose test "$patched" = $(git rev-parse :one) &&
|
test "$patched" = $(git rev-parse :one) &&
|
||||||
verbose test "$patched" = "$(remove_cr <one | git hash-object --stdin)"
|
test "$patched" = "$(remove_cr <one | git hash-object --stdin)"
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success '.gitattributes says two is binary' '
|
test_expect_success '.gitattributes says two is binary' '
|
||||||
@ -240,7 +240,7 @@ test_expect_success '.gitattributes says two is binary' '
|
|||||||
git read-tree --reset -u HEAD &&
|
git read-tree --reset -u HEAD &&
|
||||||
|
|
||||||
! has_cr dir/two &&
|
! has_cr dir/two &&
|
||||||
verbose has_cr one &&
|
has_cr one &&
|
||||||
! has_cr three
|
! has_cr three
|
||||||
'
|
'
|
||||||
|
|
||||||
@ -259,8 +259,8 @@ test_expect_success '.gitattributes says two and three are text' '
|
|||||||
echo "t* crlf" >.gitattributes &&
|
echo "t* crlf" >.gitattributes &&
|
||||||
git read-tree --reset -u HEAD &&
|
git read-tree --reset -u HEAD &&
|
||||||
|
|
||||||
verbose has_cr dir/two &&
|
has_cr dir/two &&
|
||||||
verbose has_cr three
|
has_cr three
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'in-tree .gitattributes (1)' '
|
test_expect_success 'in-tree .gitattributes (1)' '
|
||||||
@ -273,7 +273,7 @@ test_expect_success 'in-tree .gitattributes (1)' '
|
|||||||
git read-tree --reset -u HEAD &&
|
git read-tree --reset -u HEAD &&
|
||||||
|
|
||||||
! has_cr one &&
|
! has_cr one &&
|
||||||
verbose has_cr three
|
has_cr three
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'in-tree .gitattributes (2)' '
|
test_expect_success 'in-tree .gitattributes (2)' '
|
||||||
@ -283,7 +283,7 @@ test_expect_success 'in-tree .gitattributes (2)' '
|
|||||||
git checkout-index -f -q -u -a &&
|
git checkout-index -f -q -u -a &&
|
||||||
|
|
||||||
! has_cr one &&
|
! has_cr one &&
|
||||||
verbose has_cr three
|
has_cr three
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'in-tree .gitattributes (3)' '
|
test_expect_success 'in-tree .gitattributes (3)' '
|
||||||
@ -294,7 +294,7 @@ test_expect_success 'in-tree .gitattributes (3)' '
|
|||||||
git checkout-index -u one dir/two three &&
|
git checkout-index -u one dir/two three &&
|
||||||
|
|
||||||
! has_cr one &&
|
! has_cr one &&
|
||||||
verbose has_cr three
|
has_cr three
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'in-tree .gitattributes (4)' '
|
test_expect_success 'in-tree .gitattributes (4)' '
|
||||||
@ -305,7 +305,7 @@ test_expect_success 'in-tree .gitattributes (4)' '
|
|||||||
git checkout-index -u .gitattributes &&
|
git checkout-index -u .gitattributes &&
|
||||||
|
|
||||||
! has_cr one &&
|
! has_cr one &&
|
||||||
verbose has_cr three
|
has_cr three
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'checkout with existing .gitattributes' '
|
test_expect_success 'checkout with existing .gitattributes' '
|
||||||
|
@ -89,7 +89,7 @@ do
|
|||||||
rm -f .git/info/refs &&
|
rm -f .git/info/refs &&
|
||||||
git update-server-info &&
|
git update-server-info &&
|
||||||
actual="$(test_modebits .git/info/refs)" &&
|
actual="$(test_modebits .git/info/refs)" &&
|
||||||
verbose test "x$actual" = "x-$y"
|
test "x$actual" = "x-$y"
|
||||||
|
|
||||||
'
|
'
|
||||||
|
|
||||||
@ -99,7 +99,7 @@ do
|
|||||||
rm -f .git/info/refs &&
|
rm -f .git/info/refs &&
|
||||||
git update-server-info &&
|
git update-server-info &&
|
||||||
actual="$(test_modebits .git/info/refs)" &&
|
actual="$(test_modebits .git/info/refs)" &&
|
||||||
verbose test "x$actual" = "x-$x"
|
test "x$actual" = "x-$x"
|
||||||
|
|
||||||
'
|
'
|
||||||
|
|
||||||
|
@ -74,9 +74,9 @@ test_expect_success 'Rebase -Xsubtree --empty=ask --onto commit' '
|
|||||||
test_must_fail git rebase -Xsubtree=files_subtree --empty=ask --onto files-main main &&
|
test_must_fail git rebase -Xsubtree=files_subtree --empty=ask --onto files-main main &&
|
||||||
: first pick results in no changes &&
|
: first pick results in no changes &&
|
||||||
git rebase --skip &&
|
git rebase --skip &&
|
||||||
verbose test "$(commit_message HEAD~2)" = "topic_4" &&
|
test "$(commit_message HEAD~2)" = "topic_4" &&
|
||||||
verbose test "$(commit_message HEAD~)" = "files_subtree/topic_5" &&
|
test "$(commit_message HEAD~)" = "files_subtree/topic_5" &&
|
||||||
verbose test "$(commit_message HEAD)" = "Empty commit"
|
test "$(commit_message HEAD)" = "Empty commit"
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'Rebase -Xsubtree --empty=ask --rebase-merges --onto commit' '
|
test_expect_success 'Rebase -Xsubtree --empty=ask --rebase-merges --onto commit' '
|
||||||
@ -85,9 +85,9 @@ test_expect_success 'Rebase -Xsubtree --empty=ask --rebase-merges --onto commit'
|
|||||||
test_must_fail git rebase -Xsubtree=files_subtree --empty=ask --rebase-merges --onto files-main --root &&
|
test_must_fail git rebase -Xsubtree=files_subtree --empty=ask --rebase-merges --onto files-main --root &&
|
||||||
: first pick results in no changes &&
|
: first pick results in no changes &&
|
||||||
git rebase --skip &&
|
git rebase --skip &&
|
||||||
verbose test "$(commit_message HEAD~2)" = "topic_4" &&
|
test "$(commit_message HEAD~2)" = "topic_4" &&
|
||||||
verbose test "$(commit_message HEAD~)" = "files_subtree/topic_5" &&
|
test "$(commit_message HEAD~)" = "files_subtree/topic_5" &&
|
||||||
verbose test "$(commit_message HEAD)" = "Empty commit"
|
test "$(commit_message HEAD)" = "Empty commit"
|
||||||
'
|
'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
@ -24,7 +24,7 @@ test_expect_success setup '
|
|||||||
test_expect_success 'detect rewrite' '
|
test_expect_success 'detect rewrite' '
|
||||||
|
|
||||||
actual=$(git diff-files -B --summary test) &&
|
actual=$(git diff-files -B --summary test) &&
|
||||||
verbose expr "$actual" : " rewrite test ([0-9]*%)$"
|
expr "$actual" : " rewrite test ([0-9]*%)$"
|
||||||
|
|
||||||
'
|
'
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ test_expect_success '-G matches' '
|
|||||||
|
|
||||||
test_expect_success '-S --pickaxe-regex' '
|
test_expect_success '-S --pickaxe-regex' '
|
||||||
git diff --name-only -S0 --pickaxe-regex HEAD^ >out &&
|
git diff --name-only -S0 --pickaxe-regex HEAD^ >out &&
|
||||||
verbose test 4096-zeroes.txt = "$(cat out)"
|
test 4096-zeroes.txt = "$(cat out)"
|
||||||
'
|
'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
@ -16,7 +16,7 @@ add_blob() {
|
|||||||
before=$(git count-objects | sed "s/ .*//") &&
|
before=$(git count-objects | sed "s/ .*//") &&
|
||||||
BLOB=$(echo aleph_0 | git hash-object -w --stdin) &&
|
BLOB=$(echo aleph_0 | git hash-object -w --stdin) &&
|
||||||
BLOB_FILE=.git/objects/$(echo $BLOB | sed "s/^../&\//") &&
|
BLOB_FILE=.git/objects/$(echo $BLOB | sed "s/^../&\//") &&
|
||||||
verbose test $((1 + $before)) = $(git count-objects | sed "s/ .*//") &&
|
test $((1 + $before)) = $(git count-objects | sed "s/ .*//") &&
|
||||||
test_path_is_file $BLOB_FILE &&
|
test_path_is_file $BLOB_FILE &&
|
||||||
test-tool chmtime =+0 $BLOB_FILE
|
test-tool chmtime =+0 $BLOB_FILE
|
||||||
}
|
}
|
||||||
@ -51,11 +51,11 @@ test_expect_success 'prune stale packs' '
|
|||||||
test_expect_success 'prune --expire' '
|
test_expect_success 'prune --expire' '
|
||||||
add_blob &&
|
add_blob &&
|
||||||
git prune --expire=1.hour.ago &&
|
git prune --expire=1.hour.ago &&
|
||||||
verbose test $((1 + $before)) = $(git count-objects | sed "s/ .*//") &&
|
test $((1 + $before)) = $(git count-objects | sed "s/ .*//") &&
|
||||||
test_path_is_file $BLOB_FILE &&
|
test_path_is_file $BLOB_FILE &&
|
||||||
test-tool chmtime =-86500 $BLOB_FILE &&
|
test-tool chmtime =-86500 $BLOB_FILE &&
|
||||||
git prune --expire 1.day &&
|
git prune --expire 1.day &&
|
||||||
verbose test $before = $(git count-objects | sed "s/ .*//") &&
|
test $before = $(git count-objects | sed "s/ .*//") &&
|
||||||
test_path_is_missing $BLOB_FILE
|
test_path_is_missing $BLOB_FILE
|
||||||
'
|
'
|
||||||
|
|
||||||
@ -63,11 +63,11 @@ test_expect_success 'gc: implicit prune --expire' '
|
|||||||
add_blob &&
|
add_blob &&
|
||||||
test-tool chmtime =-$((2*$week-30)) $BLOB_FILE &&
|
test-tool chmtime =-$((2*$week-30)) $BLOB_FILE &&
|
||||||
git gc --no-cruft &&
|
git gc --no-cruft &&
|
||||||
verbose test $((1 + $before)) = $(git count-objects | sed "s/ .*//") &&
|
test $((1 + $before)) = $(git count-objects | sed "s/ .*//") &&
|
||||||
test_path_is_file $BLOB_FILE &&
|
test_path_is_file $BLOB_FILE &&
|
||||||
test-tool chmtime =-$((2*$week+1)) $BLOB_FILE &&
|
test-tool chmtime =-$((2*$week+1)) $BLOB_FILE &&
|
||||||
git gc --no-cruft &&
|
git gc --no-cruft &&
|
||||||
verbose test $before = $(git count-objects | sed "s/ .*//") &&
|
test $before = $(git count-objects | sed "s/ .*//") &&
|
||||||
test_path_is_missing $BLOB_FILE
|
test_path_is_missing $BLOB_FILE
|
||||||
'
|
'
|
||||||
|
|
||||||
@ -138,7 +138,7 @@ test_expect_success 'gc --no-prune' '
|
|||||||
test-tool chmtime =-$((5001*$day)) $BLOB_FILE &&
|
test-tool chmtime =-$((5001*$day)) $BLOB_FILE &&
|
||||||
git config gc.pruneExpire 2.days.ago &&
|
git config gc.pruneExpire 2.days.ago &&
|
||||||
git gc --no-prune --no-cruft &&
|
git gc --no-prune --no-cruft &&
|
||||||
verbose test 1 = $(git count-objects | sed "s/ .*//") &&
|
test 1 = $(git count-objects | sed "s/ .*//") &&
|
||||||
test_path_is_file $BLOB_FILE
|
test_path_is_file $BLOB_FILE
|
||||||
'
|
'
|
||||||
|
|
||||||
@ -192,10 +192,10 @@ test_expect_success 'gc: prune old objects after local clone' '
|
|||||||
git clone --no-hardlinks . aclone &&
|
git clone --no-hardlinks . aclone &&
|
||||||
(
|
(
|
||||||
cd aclone &&
|
cd aclone &&
|
||||||
verbose test 1 = $(git count-objects | sed "s/ .*//") &&
|
test 1 = $(git count-objects | sed "s/ .*//") &&
|
||||||
test_path_is_file $BLOB_FILE &&
|
test_path_is_file $BLOB_FILE &&
|
||||||
git gc --prune --no-cruft &&
|
git gc --prune --no-cruft &&
|
||||||
verbose test 0 = $(git count-objects | sed "s/ .*//") &&
|
test 0 = $(git count-objects | sed "s/ .*//") &&
|
||||||
test_path_is_missing $BLOB_FILE
|
test_path_is_missing $BLOB_FILE
|
||||||
)
|
)
|
||||||
'
|
'
|
||||||
|
@ -493,7 +493,7 @@ test_expect_success 'empty email' '
|
|||||||
test_tick &&
|
test_tick &&
|
||||||
C=$(GIT_AUTHOR_EMAIL= git commit-tree HEAD^{tree} </dev/null) &&
|
C=$(GIT_AUTHOR_EMAIL= git commit-tree HEAD^{tree} </dev/null) &&
|
||||||
A=$(git show --pretty=format:%an,%ae,%ad%n -s $C) &&
|
A=$(git show --pretty=format:%an,%ae,%ad%n -s $C) &&
|
||||||
verbose test "$A" = "$GIT_AUTHOR_NAME,,Thu Apr 7 15:14:13 2005 -0700"
|
test "$A" = "$GIT_AUTHOR_NAME,,Thu Apr 7 15:14:13 2005 -0700"
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'del LF before empty (1)' '
|
test_expect_success 'del LF before empty (1)' '
|
||||||
|
@ -152,7 +152,7 @@ test_expect_success 'do not complain about existing broken links (commit)' '
|
|||||||
EOF
|
EOF
|
||||||
commit=$(git hash-object -t commit -w broken-commit) &&
|
commit=$(git hash-object -t commit -w broken-commit) &&
|
||||||
git gc --no-cruft -q 2>stderr &&
|
git gc --no-cruft -q 2>stderr &&
|
||||||
verbose git cat-file -e $commit &&
|
git cat-file -e $commit &&
|
||||||
test_must_be_empty stderr
|
test_must_be_empty stderr
|
||||||
'
|
'
|
||||||
|
|
||||||
|
@ -4,6 +4,10 @@ test_description='git mv in subdirs'
|
|||||||
. ./test-lib.sh
|
. ./test-lib.sh
|
||||||
. "$TEST_DIRECTORY"/lib-diff-data.sh
|
. "$TEST_DIRECTORY"/lib-diff-data.sh
|
||||||
|
|
||||||
|
index_at_path () {
|
||||||
|
git ls-files --format='%(objectmode) %(objectname) %(stage)' "$@"
|
||||||
|
}
|
||||||
|
|
||||||
test_expect_success 'mv -f refreshes updated index entry' '
|
test_expect_success 'mv -f refreshes updated index entry' '
|
||||||
echo test >bar &&
|
echo test >bar &&
|
||||||
git add bar &&
|
git add bar &&
|
||||||
@ -187,7 +191,8 @@ test_expect_success "Michael Cassar's test case" '
|
|||||||
git mv papers/unsorted/Thesis.pdf papers/all-papers/moo-blah.pdf &&
|
git mv papers/unsorted/Thesis.pdf papers/all-papers/moo-blah.pdf &&
|
||||||
|
|
||||||
T=$(git write-tree) &&
|
T=$(git write-tree) &&
|
||||||
git ls-tree -r $T | verbose grep partA/outline.txt
|
git ls-tree -r $T >out &&
|
||||||
|
grep partA/outline.txt out
|
||||||
'
|
'
|
||||||
|
|
||||||
rm -fr papers partA path?
|
rm -fr papers partA path?
|
||||||
@ -260,12 +265,12 @@ test_expect_success 'git mv should not change sha1 of moved cache entry' '
|
|||||||
git init &&
|
git init &&
|
||||||
echo 1 >dirty &&
|
echo 1 >dirty &&
|
||||||
git add dirty &&
|
git add dirty &&
|
||||||
entry="$(git ls-files --stage dirty | cut -f 1)" &&
|
entry="$(index_at_path dirty)" &&
|
||||||
git mv dirty dirty2 &&
|
git mv dirty dirty2 &&
|
||||||
test "$entry" = "$(git ls-files --stage dirty2 | cut -f 1)" &&
|
test "$entry" = "$(index_at_path dirty2)" &&
|
||||||
echo 2 >dirty2 &&
|
echo 2 >dirty2 &&
|
||||||
git mv dirty2 dirty &&
|
git mv dirty2 dirty &&
|
||||||
test "$entry" = "$(git ls-files --stage dirty | cut -f 1)"
|
test "$entry" = "$(index_at_path dirty)"
|
||||||
'
|
'
|
||||||
|
|
||||||
rm -f dirty dirty2
|
rm -f dirty dirty2
|
||||||
@ -342,7 +347,7 @@ test_expect_success 'git mv cannot move a submodule in a file' '
|
|||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'git mv moves a submodule with a .git directory and no .gitmodules' '
|
test_expect_success 'git mv moves a submodule with a .git directory and no .gitmodules' '
|
||||||
entry="$(git ls-files --stage sub | cut -f 1)" &&
|
entry="$(index_at_path sub)" &&
|
||||||
git rm .gitmodules &&
|
git rm .gitmodules &&
|
||||||
(
|
(
|
||||||
cd sub &&
|
cd sub &&
|
||||||
@ -353,7 +358,7 @@ test_expect_success 'git mv moves a submodule with a .git directory and no .gitm
|
|||||||
mkdir mod &&
|
mkdir mod &&
|
||||||
git mv sub mod/sub &&
|
git mv sub mod/sub &&
|
||||||
test_path_is_missing sub &&
|
test_path_is_missing sub &&
|
||||||
test "$entry" = "$(git ls-files --stage mod/sub | cut -f 1)" &&
|
test "$entry" = "$(index_at_path mod/sub)" &&
|
||||||
git -C mod/sub status &&
|
git -C mod/sub status &&
|
||||||
git update-index --refresh &&
|
git update-index --refresh &&
|
||||||
git diff-files --quiet
|
git diff-files --quiet
|
||||||
@ -363,7 +368,7 @@ test_expect_success 'git mv moves a submodule with a .git directory and .gitmodu
|
|||||||
rm -rf mod &&
|
rm -rf mod &&
|
||||||
git reset --hard &&
|
git reset --hard &&
|
||||||
git submodule update &&
|
git submodule update &&
|
||||||
entry="$(git ls-files --stage sub | cut -f 1)" &&
|
entry="$(index_at_path sub)" &&
|
||||||
(
|
(
|
||||||
cd sub &&
|
cd sub &&
|
||||||
rm -f .git &&
|
rm -f .git &&
|
||||||
@ -373,7 +378,7 @@ test_expect_success 'git mv moves a submodule with a .git directory and .gitmodu
|
|||||||
mkdir mod &&
|
mkdir mod &&
|
||||||
git mv sub mod/sub &&
|
git mv sub mod/sub &&
|
||||||
test_path_is_missing sub &&
|
test_path_is_missing sub &&
|
||||||
test "$entry" = "$(git ls-files --stage mod/sub | cut -f 1)" &&
|
test "$entry" = "$(index_at_path mod/sub)" &&
|
||||||
git -C mod/sub status &&
|
git -C mod/sub status &&
|
||||||
echo mod/sub >expected &&
|
echo mod/sub >expected &&
|
||||||
git config -f .gitmodules submodule.sub.path >actual &&
|
git config -f .gitmodules submodule.sub.path >actual &&
|
||||||
@ -386,11 +391,11 @@ test_expect_success 'git mv moves a submodule with gitfile' '
|
|||||||
rm -rf mod &&
|
rm -rf mod &&
|
||||||
git reset --hard &&
|
git reset --hard &&
|
||||||
git submodule update &&
|
git submodule update &&
|
||||||
entry="$(git ls-files --stage sub | cut -f 1)" &&
|
entry="$(index_at_path sub)" &&
|
||||||
mkdir mod &&
|
mkdir mod &&
|
||||||
git -C mod mv ../sub/ . &&
|
git -C mod mv ../sub/ . &&
|
||||||
test_path_is_missing sub &&
|
test_path_is_missing sub &&
|
||||||
test "$entry" = "$(git ls-files --stage mod/sub | cut -f 1)" &&
|
test "$entry" = "$(index_at_path mod/sub)" &&
|
||||||
git -C mod/sub status &&
|
git -C mod/sub status &&
|
||||||
echo mod/sub >expected &&
|
echo mod/sub >expected &&
|
||||||
git config -f .gitmodules submodule.sub.path >actual &&
|
git config -f .gitmodules submodule.sub.path >actual &&
|
||||||
@ -404,12 +409,12 @@ test_expect_success 'mv does not complain when no .gitmodules file is found' '
|
|||||||
git reset --hard &&
|
git reset --hard &&
|
||||||
git submodule update &&
|
git submodule update &&
|
||||||
git rm .gitmodules &&
|
git rm .gitmodules &&
|
||||||
entry="$(git ls-files --stage sub | cut -f 1)" &&
|
entry="$(index_at_path sub)" &&
|
||||||
mkdir mod &&
|
mkdir mod &&
|
||||||
git mv sub mod/sub 2>actual.err &&
|
git mv sub mod/sub 2>actual.err &&
|
||||||
test_must_be_empty actual.err &&
|
test_must_be_empty actual.err &&
|
||||||
test_path_is_missing sub &&
|
test_path_is_missing sub &&
|
||||||
test "$entry" = "$(git ls-files --stage mod/sub | cut -f 1)" &&
|
test "$entry" = "$(index_at_path mod/sub)" &&
|
||||||
git -C mod/sub status &&
|
git -C mod/sub status &&
|
||||||
git update-index --refresh &&
|
git update-index --refresh &&
|
||||||
git diff-files --quiet
|
git diff-files --quiet
|
||||||
@ -420,7 +425,7 @@ test_expect_success 'mv will error out on a modified .gitmodules file unless sta
|
|||||||
git reset --hard &&
|
git reset --hard &&
|
||||||
git submodule update &&
|
git submodule update &&
|
||||||
git config -f .gitmodules foo.bar true &&
|
git config -f .gitmodules foo.bar true &&
|
||||||
entry="$(git ls-files --stage sub | cut -f 1)" &&
|
entry="$(index_at_path sub)" &&
|
||||||
mkdir mod &&
|
mkdir mod &&
|
||||||
test_must_fail git mv sub mod/sub 2>actual.err &&
|
test_must_fail git mv sub mod/sub 2>actual.err &&
|
||||||
test_file_not_empty actual.err &&
|
test_file_not_empty actual.err &&
|
||||||
@ -430,7 +435,7 @@ test_expect_success 'mv will error out on a modified .gitmodules file unless sta
|
|||||||
git mv sub mod/sub 2>actual.err &&
|
git mv sub mod/sub 2>actual.err &&
|
||||||
test_must_be_empty actual.err &&
|
test_must_be_empty actual.err &&
|
||||||
test_path_is_missing sub &&
|
test_path_is_missing sub &&
|
||||||
test "$entry" = "$(git ls-files --stage mod/sub | cut -f 1)" &&
|
test "$entry" = "$(index_at_path mod/sub)" &&
|
||||||
git -C mod/sub status &&
|
git -C mod/sub status &&
|
||||||
git update-index --refresh &&
|
git update-index --refresh &&
|
||||||
git diff-files --quiet
|
git diff-files --quiet
|
||||||
@ -442,13 +447,13 @@ test_expect_success 'mv issues a warning when section is not found in .gitmodule
|
|||||||
git submodule update &&
|
git submodule update &&
|
||||||
git config -f .gitmodules --remove-section submodule.sub &&
|
git config -f .gitmodules --remove-section submodule.sub &&
|
||||||
git add .gitmodules &&
|
git add .gitmodules &&
|
||||||
entry="$(git ls-files --stage sub | cut -f 1)" &&
|
entry="$(index_at_path sub)" &&
|
||||||
echo "warning: Could not find section in .gitmodules where path=sub" >expect.err &&
|
echo "warning: Could not find section in .gitmodules where path=sub" >expect.err &&
|
||||||
mkdir mod &&
|
mkdir mod &&
|
||||||
git mv sub mod/sub 2>actual.err &&
|
git mv sub mod/sub 2>actual.err &&
|
||||||
test_cmp expect.err actual.err &&
|
test_cmp expect.err actual.err &&
|
||||||
test_path_is_missing sub &&
|
test_path_is_missing sub &&
|
||||||
test "$entry" = "$(git ls-files --stage mod/sub | cut -f 1)" &&
|
test "$entry" = "$(index_at_path mod/sub)" &&
|
||||||
git -C mod/sub status &&
|
git -C mod/sub status &&
|
||||||
git update-index --refresh &&
|
git update-index --refresh &&
|
||||||
git diff-files --quiet
|
git diff-files --quiet
|
||||||
|
@ -120,7 +120,7 @@ test_expect_success 'git clean with relative prefix' '
|
|||||||
grep part3 |
|
grep part3 |
|
||||||
sed -n -e "s|^Would remove ||p"
|
sed -n -e "s|^Would remove ||p"
|
||||||
) &&
|
) &&
|
||||||
verbose test "$would_clean" = ../src/part3.c
|
test "$would_clean" = ../src/part3.c
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'git clean with absolute path' '
|
test_expect_success 'git clean with absolute path' '
|
||||||
@ -133,7 +133,7 @@ test_expect_success 'git clean with absolute path' '
|
|||||||
grep part3 |
|
grep part3 |
|
||||||
sed -n -e "s|^Would remove ||p"
|
sed -n -e "s|^Would remove ||p"
|
||||||
) &&
|
) &&
|
||||||
verbose test "$would_clean" = ../src/part3.c
|
test "$would_clean" = ../src/part3.c
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'git clean with out of work tree relative path' '
|
test_expect_success 'git clean with out of work tree relative path' '
|
||||||
|
@ -405,40 +405,40 @@ test_expect_success '__gitdir - remote as argument' '
|
|||||||
|
|
||||||
test_expect_success '__git_dequote - plain unquoted word' '
|
test_expect_success '__git_dequote - plain unquoted word' '
|
||||||
__git_dequote unquoted-word &&
|
__git_dequote unquoted-word &&
|
||||||
verbose test unquoted-word = "$dequoted_word"
|
test unquoted-word = "$dequoted_word"
|
||||||
'
|
'
|
||||||
|
|
||||||
# input: b\a\c\k\'\\\"s\l\a\s\h\es
|
# input: b\a\c\k\'\\\"s\l\a\s\h\es
|
||||||
# expected: back'\"slashes
|
# expected: back'\"slashes
|
||||||
test_expect_success '__git_dequote - backslash escaped' '
|
test_expect_success '__git_dequote - backslash escaped' '
|
||||||
__git_dequote "b\a\c\k\\'\''\\\\\\\"s\l\a\s\h\es" &&
|
__git_dequote "b\a\c\k\\'\''\\\\\\\"s\l\a\s\h\es" &&
|
||||||
verbose test "back'\''\\\"slashes" = "$dequoted_word"
|
test "back'\''\\\"slashes" = "$dequoted_word"
|
||||||
'
|
'
|
||||||
|
|
||||||
# input: sin'gle\' '"quo'ted
|
# input: sin'gle\' '"quo'ted
|
||||||
# expected: single\ "quoted
|
# expected: single\ "quoted
|
||||||
test_expect_success '__git_dequote - single quoted' '
|
test_expect_success '__git_dequote - single quoted' '
|
||||||
__git_dequote "'"sin'gle\\\\' '\\\"quo'ted"'" &&
|
__git_dequote "'"sin'gle\\\\' '\\\"quo'ted"'" &&
|
||||||
verbose test '\''single\ "quoted'\'' = "$dequoted_word"
|
test '\''single\ "quoted'\'' = "$dequoted_word"
|
||||||
'
|
'
|
||||||
|
|
||||||
# input: dou"ble\\" "\"\quot"ed
|
# input: dou"ble\\" "\"\quot"ed
|
||||||
# expected: double\ "\quoted
|
# expected: double\ "\quoted
|
||||||
test_expect_success '__git_dequote - double quoted' '
|
test_expect_success '__git_dequote - double quoted' '
|
||||||
__git_dequote '\''dou"ble\\" "\"\quot"ed'\'' &&
|
__git_dequote '\''dou"ble\\" "\"\quot"ed'\'' &&
|
||||||
verbose test '\''double\ "\quoted'\'' = "$dequoted_word"
|
test '\''double\ "\quoted'\'' = "$dequoted_word"
|
||||||
'
|
'
|
||||||
|
|
||||||
# input: 'open single quote
|
# input: 'open single quote
|
||||||
test_expect_success '__git_dequote - open single quote' '
|
test_expect_success '__git_dequote - open single quote' '
|
||||||
__git_dequote "'\''open single quote" &&
|
__git_dequote "'\''open single quote" &&
|
||||||
verbose test "open single quote" = "$dequoted_word"
|
test "open single quote" = "$dequoted_word"
|
||||||
'
|
'
|
||||||
|
|
||||||
# input: "open double quote
|
# input: "open double quote
|
||||||
test_expect_success '__git_dequote - open double quote' '
|
test_expect_success '__git_dequote - open double quote' '
|
||||||
__git_dequote "\"open double quote" &&
|
__git_dequote "\"open double quote" &&
|
||||||
verbose test "open double quote" = "$dequoted_word"
|
test "open double quote" = "$dequoted_word"
|
||||||
'
|
'
|
||||||
|
|
||||||
|
|
||||||
@ -616,7 +616,7 @@ test_expect_success '__git_is_configured_remote' '
|
|||||||
test_when_finished "git remote remove remote_2" &&
|
test_when_finished "git remote remove remote_2" &&
|
||||||
git remote add remote_2 git://remote_2 &&
|
git remote add remote_2 git://remote_2 &&
|
||||||
(
|
(
|
||||||
verbose __git_is_configured_remote remote_2 &&
|
__git_is_configured_remote remote_2 &&
|
||||||
test_must_fail __git_is_configured_remote non-existent
|
test_must_fail __git_is_configured_remote non-existent
|
||||||
)
|
)
|
||||||
'
|
'
|
||||||
@ -2596,30 +2596,30 @@ test_expect_success 'options with value' '
|
|||||||
test_expect_success 'sourcing the completion script clears cached commands' '
|
test_expect_success 'sourcing the completion script clears cached commands' '
|
||||||
(
|
(
|
||||||
__git_compute_all_commands &&
|
__git_compute_all_commands &&
|
||||||
verbose test -n "$__git_all_commands" &&
|
test -n "$__git_all_commands" &&
|
||||||
. "$GIT_BUILD_DIR/contrib/completion/git-completion.bash" &&
|
. "$GIT_BUILD_DIR/contrib/completion/git-completion.bash" &&
|
||||||
verbose test -z "$__git_all_commands"
|
test -z "$__git_all_commands"
|
||||||
)
|
)
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'sourcing the completion script clears cached merge strategies' '
|
test_expect_success 'sourcing the completion script clears cached merge strategies' '
|
||||||
(
|
(
|
||||||
__git_compute_merge_strategies &&
|
__git_compute_merge_strategies &&
|
||||||
verbose test -n "$__git_merge_strategies" &&
|
test -n "$__git_merge_strategies" &&
|
||||||
. "$GIT_BUILD_DIR/contrib/completion/git-completion.bash" &&
|
. "$GIT_BUILD_DIR/contrib/completion/git-completion.bash" &&
|
||||||
verbose test -z "$__git_merge_strategies"
|
test -z "$__git_merge_strategies"
|
||||||
)
|
)
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'sourcing the completion script clears cached --options' '
|
test_expect_success 'sourcing the completion script clears cached --options' '
|
||||||
(
|
(
|
||||||
__gitcomp_builtin checkout &&
|
__gitcomp_builtin checkout &&
|
||||||
verbose test -n "$__gitcomp_builtin_checkout" &&
|
test -n "$__gitcomp_builtin_checkout" &&
|
||||||
__gitcomp_builtin notes_edit &&
|
__gitcomp_builtin notes_edit &&
|
||||||
verbose test -n "$__gitcomp_builtin_notes_edit" &&
|
test -n "$__gitcomp_builtin_notes_edit" &&
|
||||||
. "$GIT_BUILD_DIR/contrib/completion/git-completion.bash" &&
|
. "$GIT_BUILD_DIR/contrib/completion/git-completion.bash" &&
|
||||||
verbose test -z "$__gitcomp_builtin_checkout" &&
|
test -z "$__gitcomp_builtin_checkout" &&
|
||||||
verbose test -z "$__gitcomp_builtin_notes_edit"
|
test -z "$__gitcomp_builtin_notes_edit"
|
||||||
)
|
)
|
||||||
'
|
'
|
||||||
|
|
||||||
|
@ -1227,15 +1227,6 @@ test_i18ngrep () {
|
|||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
# Call any command "$@" but be more verbose about its
|
|
||||||
# failure. This is handy for commands like "test" which do
|
|
||||||
# not output anything when they fail.
|
|
||||||
verbose () {
|
|
||||||
"$@" && return 0
|
|
||||||
echo >&4 "command failed: $(git rev-parse --sq-quote "$@")"
|
|
||||||
return 1
|
|
||||||
}
|
|
||||||
|
|
||||||
# Check if the file expected to be empty is indeed empty, and barfs
|
# Check if the file expected to be empty is indeed empty, and barfs
|
||||||
# otherwise.
|
# otherwise.
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user