t1200: work around a bug in some implementations of "find"
authorJunio C Hamano <gitster@pobox.com>
Sat, 26 Dec 2009 21:53:45 +0000 (13:53 -0800)
committerJunio C Hamano <gitster@pobox.com>
Sat, 26 Dec 2009 21:59:31 +0000 (13:59 -0800)
"find path ..." command should exit with zero status only when all path
operands were traversed successfully.  When a non-existent path is given,
however, some implementations of "find" (e.g. OpenBSD 4.6) exit with zero
status and break the last test in t1200.

Rewrite the test to check that there is no regular files in the objects
fan-out directories to work around this bug; it is closer to what we are
testing anyway.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t1200-tutorial.sh

index 238c2f1c08d0c27b71cdde8c7ddc2b3240ea1fde..ab55eda158bb5a6ecad77302aa2fe17bd6e92be3 100755 (executable)
@@ -259,7 +259,7 @@ test_expect_success 'git repack' 'git repack'
 test_expect_success 'git prune-packed' 'git prune-packed'
 test_expect_success '-> only packed objects' '
        git prune && # Remove conflict marked blobs
-       ! find .git/objects/[0-9a-f][0-9a-f] -type f
+       test $(find .git/objects/[0-9a-f][0-9a-f] -type f -print 2>/dev/null | wc -l) = 0
 '
 
 test_done