git/t/t3001-ls-files-others-exclude.sh
Pavel Roskin da7bc9b081 [PATCH] Missing test_done
All test scripts should end with test_done, which reports the test
results.  In the future, it could be used for other purposes, e.g. to
distinguish graceful end from "exit" in a test.  This patch fixes
scripts that don't call test_done.

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-11 18:26:15 -07:00

71 lines
953 B
Bash
Executable file

#!/bin/sh
#
# Copyright (c) 2005 Junio C Hamano
#
test_description='git-ls-files --others --exclude
This test runs git-ls-files --others and tests --exclude patterns.
'
. ./test-lib.sh
rm -fr one three
for dir in . one one/two three
do
mkdir -p $dir &&
for i in 1 2 3 4 5 6 7 8
do
>$dir/a.$i
done
done
cat >expect <<EOF
a.2
a.4
a.5
a.8
one/a.3
one/a.4
one/a.5
one/a.7
one/two/a.2
one/two/a.3
one/two/a.5
one/two/a.7
one/two/a.8
three/a.2
three/a.3
three/a.4
three/a.5
three/a.8
EOF
echo '.gitignore
output
expect
.gitignore
*.7
!*.8' >.git/ignore
echo '*.1
/*.3
!*.6' >.gitignore
echo '*.2
two/*.4
!*.7
*.8' >one/.gitignore
echo '!*.2
!*.8' >one/two/.gitignore
test_expect_success \
'git-ls-files --others with various exclude options.' \
'git-ls-files --others \
--exclude=\*.6 \
--exclude-per-directory=.gitignore \
--exclude-from=.git/ignore \
>output &&
diff -u expect output'
test_done