summaryrefslogtreecommitdiff
path: root/t/t2007-checkout-symlink.sh
diff options
context:
space:
mode:
authorJohannes Sixt <j6t@kdbg.org>2009-03-04 21:38:24 (GMT)
committerJohannes Sixt <j6t@kdbg.org>2009-03-22 16:26:44 (GMT)
commit704a3143d5ba0709727430154ef3dad600aad4de (patch)
treeace848d8b1548a6574b6c18c665369b9469c1464 /t/t2007-checkout-symlink.sh
parent7b7247b0d7cb6a105d87574642343480707414b3 (diff)
downloadgit-704a3143d5ba0709727430154ef3dad600aad4de.zip
git-704a3143d5ba0709727430154ef3dad600aad4de.tar.gz
git-704a3143d5ba0709727430154ef3dad600aad4de.tar.bz2
Use prerequisite tags to skip tests that depend on symbolic links
Many tests depend on that symbolic links work. This introduces a check that sets the prerequisite tag SYMLINKS if the file system supports symbolic links. Since so many tests have to check for this prerequisite, we do the check in test-lib.sh, so that we don't need to repeat the test in many scripts. To check for 'ln -s' failures, you can use a FAT partition on Linux: $ mkdosfs -C git-on-fat 1000000 $ sudo mount -o loop,uid=j6t,gid=users,shortname=winnt git-on-fat /mnt Clone git to /mnt and $ GIT_SKIP_TESTS='t0001.1[34] t0010 t1301 t403[34] t4129.[47] t5701.7 t7701.3 t9100 t9101.26 t9119 t9124.[67] t9200.10 t9600.6' \ make test (These additionally skipped tests depend on POSIX permissions that FAT on Linux does not provide.) Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Diffstat (limited to 't/t2007-checkout-symlink.sh')
-rwxr-xr-xt/t2007-checkout-symlink.sh6
1 files changed, 6 insertions, 0 deletions
diff --git a/t/t2007-checkout-symlink.sh b/t/t2007-checkout-symlink.sh
index 0526fce..20f3343 100755
--- a/t/t2007-checkout-symlink.sh
+++ b/t/t2007-checkout-symlink.sh
@@ -6,6 +6,12 @@ test_description='git checkout to switch between branches with symlink<->dir'
. ./test-lib.sh
+if ! test_have_prereq SYMLINKS
+then
+ say "symbolic links not supported - skipping tests"
+ test_done
+fi
+
test_expect_success setup '
mkdir frotz &&