tvl-depot/t/t3009-ls-files-others-nonsubmodule.sh
Vincent Ambo 1b593e1ea4 Squashed 'third_party/git/' content from commit cb71568594
git-subtree-dir: third_party/git
git-subtree-split: cb715685942260375e1eb8153b0768a376e4ece7
2020-01-11 23:36:56 +00:00

50 lines
1.5 KiB
Bash
Executable file

#!/bin/sh
test_description='test git ls-files --others with non-submodule repositories
This test runs git ls-files --others with the following working tree:
nonrepo-no-files/
plain directory with no files
nonrepo-untracked-file/
plain directory with an untracked file
repo-no-commit-no-files/
git repository without a commit or a file
repo-no-commit-untracked-file/
git repository without a commit but with an untracked file
repo-with-commit-no-files/
git repository with a commit and no untracked files
repo-with-commit-untracked-file/
git repository with a commit and an untracked file
'
. ./test-lib.sh
test_expect_success 'setup: directories' '
mkdir nonrepo-no-files/ &&
mkdir nonrepo-untracked-file &&
: >nonrepo-untracked-file/untracked &&
git init repo-no-commit-no-files &&
git init repo-no-commit-untracked-file &&
: >repo-no-commit-untracked-file/untracked &&
git init repo-with-commit-no-files &&
git -C repo-with-commit-no-files commit --allow-empty -mmsg &&
git init repo-with-commit-untracked-file &&
test_commit -C repo-with-commit-untracked-file msg &&
: >repo-with-commit-untracked-file/untracked
'
test_expect_success 'ls-files --others handles untracked git repositories' '
git ls-files -o >output &&
cat >expect <<-EOF &&
nonrepo-untracked-file/untracked
output
repo-no-commit-no-files/
repo-no-commit-untracked-file/
repo-with-commit-no-files/
repo-with-commit-untracked-file/
EOF
test_cmp expect output
'
test_done