Code

t7508: add a test for "git status" in a read-only repository
authorMarkus Heidelberg <markus.heidelberg@web.de>
Sat, 3 Apr 2010 10:11:57 +0000 (12:11 +0200)
committerJunio C Hamano <gitster@pobox.com>
Sat, 3 Apr 2010 18:25:13 +0000 (11:25 -0700)
Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t7508-status.sh

index c317bdef4a80efdfdf110e5780b12a69109ab8e7..a9df7ff7bd0efd987a83f180122873996d866436 100755 (executable)
@@ -703,4 +703,19 @@ test_expect_success 'commit --dry-run submodule summary (--amend)' '
        test_cmp expect output
 '
 
+test_expect_success POSIXPERM 'status succeeds in a read-only repository' '
+       (
+               chmod a-w .git &&
+               # make dir1/tracked stat-dirty
+               >dir1/tracked1 && mv -f dir1/tracked1 dir1/tracked &&
+               git status -s >output &&
+               ! grep dir1/tracked output &&
+               # make sure "status" succeeded without writing index out
+               git diff-files | grep dir1/tracked
+       )
+       status=$?
+       chmod 775 .git
+       (exit $status)
+'
+
 test_done