]> asedeno.scripts.mit.edu Git - git.git/blobdiff - t/t5530-upload-pack-error.sh
Makefile: add missing dependency on http.h
[git.git] / t / t5530-upload-pack-error.sh
index 82ca3003dd2cd3c15b10280690e9ac829dc7c1eb..044603c26ed62e3ddf03ebb2542f783e4dd7d9ff 100755 (executable)
@@ -30,11 +30,12 @@ test_expect_success 'fsck fails' '
        test_must_fail git fsck
 '
 
-test_expect_success 'upload-pack fails due to error in pack-objects' '
+test_expect_success 'upload-pack fails due to error in pack-objects packing' '
 
-       ! echo "0032want $(git rev-parse HEAD)
-00000009done
-0000" | git upload-pack . > /dev/null 2> output.err &&
+       printf "0032want %s\n00000009done\n0000" \
+               $(git rev-parse HEAD) >input &&
+       test_must_fail git upload-pack . <input >/dev/null 2>output.err &&
+       grep "unable to read" output.err &&
        grep "pack-objects died" output.err
 '
 
@@ -50,15 +51,24 @@ test_expect_success 'fsck fails' '
 '
 test_expect_success 'upload-pack fails due to error in rev-list' '
 
-       ! echo "0032want $(git rev-parse HEAD)
-00000009done
-0000" | git upload-pack . > /dev/null 2> output.err &&
+       printf "0032want %s\n0034shallow %s00000009done\n0000" \
+               $(git rev-parse HEAD) $(git rev-parse HEAD^) >input &&
+       test_must_fail git upload-pack . <input >/dev/null 2>output.err &&
        # pack-objects survived
        grep "Total.*, reused" output.err &&
        # but there was an error, which must have been in rev-list
        grep "bad tree object" output.err
 '
 
+test_expect_success 'upload-pack fails due to error in pack-objects enumeration' '
+
+       printf "0032want %s\n00000009done\n0000" \
+               $(git rev-parse HEAD) >input &&
+       test_must_fail git upload-pack . <input >/dev/null 2>output.err &&
+       grep "bad tree object" output.err &&
+       grep "pack-objects died" output.err
+'
+
 test_expect_success 'create empty repository' '
 
        mkdir foo &&