t3600: modernize style
The tests in `t3600-rm.sh` were written long time ago, and has a lot of style violations, including the mixed use of tabs and spaces, not having the title and the opening quote of the body on the first line of the tests, and other shell script style violations. Update it to match the CodingGuidelines. Signed-off-by: Rohit Ashiwal <rohit.ashiwal265@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
parent
21d5ad9110
commit
b5368c23c1
191
t/t3600-rm.sh
191
t/t3600-rm.sh
|
|
@ -8,91 +8,92 @@ test_description='Test of the various options to git rm.'
|
||||||
. ./test-lib.sh
|
. ./test-lib.sh
|
||||||
|
|
||||||
# Setup some files to be removed, some with funny characters
|
# Setup some files to be removed, some with funny characters
|
||||||
test_expect_success \
|
test_expect_success 'Initialize test directory' '
|
||||||
'Initialize test directory' \
|
touch -- foo bar baz "space embedded" -q &&
|
||||||
"touch -- foo bar baz 'space embedded' -q &&
|
git add -- foo bar baz "space embedded" -q &&
|
||||||
git add -- foo bar baz 'space embedded' -q &&
|
git commit -m "add normal files"
|
||||||
git commit -m 'add normal files'"
|
'
|
||||||
|
|
||||||
if test_have_prereq !FUNNYNAMES; then
|
if test_have_prereq !FUNNYNAMES
|
||||||
|
then
|
||||||
say 'Your filesystem does not allow tabs in filenames.'
|
say 'Your filesystem does not allow tabs in filenames.'
|
||||||
fi
|
fi
|
||||||
|
|
||||||
test_expect_success FUNNYNAMES 'add files with funny names' "
|
test_expect_success FUNNYNAMES 'add files with funny names' '
|
||||||
touch -- 'tab embedded' 'newline
|
touch -- "tab embedded" "newline${LF}embedded" &&
|
||||||
embedded' &&
|
git add -- "tab embedded" "newline${LF}embedded" &&
|
||||||
git add -- 'tab embedded' 'newline
|
git commit -m "add files with tabs and newlines"
|
||||||
embedded' &&
|
|
||||||
git commit -m 'add files with tabs and newlines'
|
|
||||||
"
|
|
||||||
|
|
||||||
test_expect_success \
|
|
||||||
'Pre-check that foo exists and is in index before git rm foo' \
|
|
||||||
'[ -f foo ] && git ls-files --error-unmatch foo'
|
|
||||||
|
|
||||||
test_expect_success \
|
|
||||||
'Test that git rm foo succeeds' \
|
|
||||||
'git rm --cached foo'
|
|
||||||
|
|
||||||
test_expect_success \
|
|
||||||
'Test that git rm --cached foo succeeds if the index matches the file' \
|
|
||||||
'echo content >foo &&
|
|
||||||
git add foo &&
|
|
||||||
git rm --cached foo'
|
|
||||||
|
|
||||||
test_expect_success \
|
|
||||||
'Test that git rm --cached foo succeeds if the index matches the file' \
|
|
||||||
'echo content >foo &&
|
|
||||||
git add foo &&
|
|
||||||
git commit -m foo &&
|
|
||||||
echo "other content" >foo &&
|
|
||||||
git rm --cached foo'
|
|
||||||
|
|
||||||
test_expect_success \
|
|
||||||
'Test that git rm --cached foo fails if the index matches neither the file nor HEAD' '
|
|
||||||
echo content >foo &&
|
|
||||||
git add foo &&
|
|
||||||
git commit -m foo --allow-empty &&
|
|
||||||
echo "other content" >foo &&
|
|
||||||
git add foo &&
|
|
||||||
echo "yet another content" >foo &&
|
|
||||||
test_must_fail git rm --cached foo
|
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success \
|
test_expect_success 'Pre-check that foo exists and is in index before git rm foo' '
|
||||||
'Test that git rm --cached -f foo works in case where --cached only did not' \
|
test -f foo &&
|
||||||
'echo content >foo &&
|
git ls-files --error-unmatch foo
|
||||||
git add foo &&
|
'
|
||||||
git commit -m foo --allow-empty &&
|
|
||||||
echo "other content" >foo &&
|
|
||||||
git add foo &&
|
|
||||||
echo "yet another content" >foo &&
|
|
||||||
git rm --cached -f foo'
|
|
||||||
|
|
||||||
test_expect_success \
|
test_expect_success 'Test that git rm foo succeeds' '
|
||||||
'Post-check that foo exists but is not in index after git rm foo' \
|
git rm --cached foo
|
||||||
'[ -f foo ] && test_must_fail git ls-files --error-unmatch foo'
|
'
|
||||||
|
|
||||||
test_expect_success \
|
test_expect_success 'Test that git rm --cached foo succeeds if the index matches the file' '
|
||||||
'Pre-check that bar exists and is in index before "git rm bar"' \
|
echo content >foo &&
|
||||||
'[ -f bar ] && git ls-files --error-unmatch bar'
|
git add foo &&
|
||||||
|
git rm --cached foo
|
||||||
|
'
|
||||||
|
|
||||||
test_expect_success \
|
test_expect_success 'Test that git rm --cached foo succeeds if the index matches the file' '
|
||||||
'Test that "git rm bar" succeeds' \
|
echo content >foo &&
|
||||||
'git rm bar'
|
git add foo &&
|
||||||
|
git commit -m foo &&
|
||||||
|
echo "other content" >foo &&
|
||||||
|
git rm --cached foo
|
||||||
|
'
|
||||||
|
|
||||||
test_expect_success \
|
test_expect_success 'Test that git rm --cached foo fails if the index matches neither the file nor HEAD' '
|
||||||
'Post-check that bar does not exist and is not in index after "git rm -f bar"' \
|
echo content >foo &&
|
||||||
'! [ -f bar ] && test_must_fail git ls-files --error-unmatch bar'
|
git add foo &&
|
||||||
|
git commit -m foo --allow-empty &&
|
||||||
|
echo "other content" >foo &&
|
||||||
|
git add foo &&
|
||||||
|
echo "yet another content" >foo &&
|
||||||
|
test_must_fail git rm --cached foo
|
||||||
|
'
|
||||||
|
|
||||||
test_expect_success \
|
test_expect_success 'Test that git rm --cached -f foo works in case where --cached only did not' '
|
||||||
'Test that "git rm -- -q" succeeds (remove a file that looks like an option)' \
|
echo content >foo &&
|
||||||
'git rm -- -q'
|
git add foo &&
|
||||||
|
git commit -m foo --allow-empty &&
|
||||||
|
echo "other content" >foo &&
|
||||||
|
git add foo &&
|
||||||
|
echo "yet another content" >foo &&
|
||||||
|
git rm --cached -f foo
|
||||||
|
'
|
||||||
|
|
||||||
test_expect_success FUNNYNAMES \
|
test_expect_success 'Post-check that foo exists but is not in index after git rm foo' '
|
||||||
"Test that \"git rm -f\" succeeds with embedded space, tab, or newline characters." \
|
test -f foo &&
|
||||||
"git rm -f 'space embedded' 'tab embedded' 'newline
|
test_must_fail git ls-files --error-unmatch foo
|
||||||
embedded'"
|
'
|
||||||
|
|
||||||
|
test_expect_success 'Pre-check that bar exists and is in index before "git rm bar"' '
|
||||||
|
test -f bar &&
|
||||||
|
git ls-files --error-unmatch bar
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'Test that "git rm bar" succeeds' '
|
||||||
|
git rm bar
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'Post-check that bar does not exist and is not in index after "git rm -f bar"' '
|
||||||
|
! test -f bar &&
|
||||||
|
test_must_fail git ls-files --error-unmatch bar
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'Test that "git rm -- -q" succeeds (remove a file that looks like an option)' '
|
||||||
|
git rm -- -q
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success FUNNYNAMES 'Test that "git rm -f" succeeds with embedded space, tab, or newline characters.' '
|
||||||
|
git rm -f "space embedded" "tab embedded" "newline${LF}embedded"
|
||||||
|
'
|
||||||
|
|
||||||
test_expect_success SANITY 'Test that "git rm -f" fails if its rm fails' '
|
test_expect_success SANITY 'Test that "git rm -f" fails if its rm fails' '
|
||||||
test_when_finished "chmod 775 ." &&
|
test_when_finished "chmod 775 ." &&
|
||||||
|
|
@ -100,9 +101,9 @@ test_expect_success SANITY 'Test that "git rm -f" fails if its rm fails' '
|
||||||
test_must_fail git rm -f baz
|
test_must_fail git rm -f baz
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success \
|
test_expect_success 'When the rm in "git rm -f" fails, it should not remove the file from the index' '
|
||||||
'When the rm in "git rm -f" fails, it should not remove the file from the index' \
|
git ls-files --error-unmatch baz
|
||||||
'git ls-files --error-unmatch baz'
|
'
|
||||||
|
|
||||||
test_expect_success 'Remove nonexistent file with --ignore-unmatch' '
|
test_expect_success 'Remove nonexistent file with --ignore-unmatch' '
|
||||||
git rm --ignore-unmatch nonexistent
|
git rm --ignore-unmatch nonexistent
|
||||||
|
|
@ -217,23 +218,25 @@ test_expect_success 'Remove nonexistent file returns nonzero exit status' '
|
||||||
|
|
||||||
test_expect_success 'Call "rm" from outside the work tree' '
|
test_expect_success 'Call "rm" from outside the work tree' '
|
||||||
mkdir repo &&
|
mkdir repo &&
|
||||||
(cd repo &&
|
(
|
||||||
git init &&
|
cd repo &&
|
||||||
echo something >somefile &&
|
git init &&
|
||||||
git add somefile &&
|
echo something >somefile &&
|
||||||
git commit -m "add a file" &&
|
git add somefile &&
|
||||||
(cd .. &&
|
git commit -m "add a file" &&
|
||||||
git --git-dir=repo/.git --work-tree=repo rm somefile) &&
|
(
|
||||||
test_must_fail git ls-files --error-unmatch somefile)
|
cd .. &&
|
||||||
|
git --git-dir=repo/.git --work-tree=repo rm somefile
|
||||||
|
) &&
|
||||||
|
test_must_fail git ls-files --error-unmatch somefile
|
||||||
|
)
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'refresh index before checking if it is up-to-date' '
|
test_expect_success 'refresh index before checking if it is up-to-date' '
|
||||||
|
|
||||||
git reset --hard &&
|
git reset --hard &&
|
||||||
test-tool chmtime -86400 frotz/nitfol &&
|
test-tool chmtime -86400 frotz/nitfol &&
|
||||||
git rm frotz/nitfol &&
|
git rm frotz/nitfol &&
|
||||||
test ! -f frotz/nitfol
|
test ! -f frotz/nitfol
|
||||||
|
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'choking "git rm" should not let it die with cruft' '
|
test_expect_success 'choking "git rm" should not let it die with cruft' '
|
||||||
|
|
@ -242,8 +245,8 @@ test_expect_success 'choking "git rm" should not let it die with cruft' '
|
||||||
i=0 &&
|
i=0 &&
|
||||||
while test $i -lt 12000
|
while test $i -lt 12000
|
||||||
do
|
do
|
||||||
echo "100644 1234567890123456789012345678901234567890 0 some-file-$i"
|
echo "100644 1234567890123456789012345678901234567890 0 some-file-$i"
|
||||||
i=$(( $i + 1 ))
|
i=$(( $i + 1 ))
|
||||||
done | git update-index --index-info &&
|
done | git update-index --index-info &&
|
||||||
git rm -n "some-file-*" | : &&
|
git rm -n "some-file-*" | : &&
|
||||||
test_path_is_missing .git/index.lock
|
test_path_is_missing .git/index.lock
|
||||||
|
|
@ -545,7 +548,8 @@ test_expect_success 'rm of a conflicted populated submodule with a .git director
|
||||||
git checkout conflict1 &&
|
git checkout conflict1 &&
|
||||||
git reset --hard &&
|
git reset --hard &&
|
||||||
git submodule update &&
|
git submodule update &&
|
||||||
(cd submod &&
|
(
|
||||||
|
cd submod &&
|
||||||
rm .git &&
|
rm .git &&
|
||||||
cp -R ../.git/modules/sub .git &&
|
cp -R ../.git/modules/sub .git &&
|
||||||
GIT_WORK_TREE=. git config --unset core.worktree
|
GIT_WORK_TREE=. git config --unset core.worktree
|
||||||
|
|
@ -579,7 +583,8 @@ test_expect_success 'rm of a populated submodule with a .git directory migrates
|
||||||
git checkout -f master &&
|
git checkout -f master &&
|
||||||
git reset --hard &&
|
git reset --hard &&
|
||||||
git submodule update &&
|
git submodule update &&
|
||||||
(cd submod &&
|
(
|
||||||
|
cd submod &&
|
||||||
rm .git &&
|
rm .git &&
|
||||||
cp -R ../.git/modules/sub .git &&
|
cp -R ../.git/modules/sub .git &&
|
||||||
GIT_WORK_TREE=. git config --unset core.worktree &&
|
GIT_WORK_TREE=. git config --unset core.worktree &&
|
||||||
|
|
@ -600,7 +605,8 @@ EOF
|
||||||
test_expect_success 'setup subsubmodule' '
|
test_expect_success 'setup subsubmodule' '
|
||||||
git reset --hard &&
|
git reset --hard &&
|
||||||
git submodule update &&
|
git submodule update &&
|
||||||
(cd submod &&
|
(
|
||||||
|
cd submod &&
|
||||||
git update-index --add --cacheinfo 160000 $(git rev-parse HEAD) subsubmod &&
|
git update-index --add --cacheinfo 160000 $(git rev-parse HEAD) subsubmod &&
|
||||||
git config -f .gitmodules submodule.sub.url ../. &&
|
git config -f .gitmodules submodule.sub.url ../. &&
|
||||||
git config -f .gitmodules submodule.sub.path subsubmod &&
|
git config -f .gitmodules submodule.sub.path subsubmod &&
|
||||||
|
|
@ -667,7 +673,8 @@ test_expect_success 'rm of a populated nested submodule with nested untracked fi
|
||||||
test_expect_success "rm absorbs submodule's nested .git directory" '
|
test_expect_success "rm absorbs submodule's nested .git directory" '
|
||||||
git reset --hard &&
|
git reset --hard &&
|
||||||
git submodule update --recursive &&
|
git submodule update --recursive &&
|
||||||
(cd submod/subsubmod &&
|
(
|
||||||
|
cd submod/subsubmod &&
|
||||||
rm .git &&
|
rm .git &&
|
||||||
mv ../../.git/modules/sub/modules/sub .git &&
|
mv ../../.git/modules/sub/modules/sub .git &&
|
||||||
GIT_WORK_TREE=. git config --unset core.worktree
|
GIT_WORK_TREE=. git config --unset core.worktree
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue