43 lines
868 B
Bash
Executable File
43 lines
868 B
Bash
Executable File
#!/bin/sh
|
|
|
|
test_description='ls-files --exclude does not affect index files'
|
|
|
|
TEST_PASSES_SANITIZE_LEAK=true
|
|
. ./test-lib.sh
|
|
|
|
test_expect_success 'create repo with file' '
|
|
echo content >file &&
|
|
git add file &&
|
|
git commit -m file &&
|
|
echo modification >file
|
|
'
|
|
|
|
check_output() {
|
|
test_expect_success "ls-files output contains file ($1)" "
|
|
echo '$2' >expect &&
|
|
git ls-files --exclude-standard --$1 >output &&
|
|
test_cmp expect output
|
|
"
|
|
}
|
|
|
|
check_all_output() {
|
|
check_output 'cached' 'file'
|
|
check_output 'modified' 'file'
|
|
}
|
|
|
|
check_all_output
|
|
test_expect_success 'add file to gitignore' '
|
|
echo file >.gitignore
|
|
'
|
|
check_all_output
|
|
|
|
test_expect_success 'ls-files -i -c lists only tracked-but-ignored files' '
|
|
echo content >other-file &&
|
|
git add other-file &&
|
|
echo file >expect &&
|
|
git ls-files -i -c --exclude-standard >output &&
|
|
test_cmp expect output
|
|
'
|
|
|
|
test_done
|