]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t5530: compute results based on object length
authorbrian m. carlson <sandals@crustytoothpaste.net>
Sat, 21 Dec 2019 19:49:31 +0000 (19:49 +0000)
committerJunio C Hamano <gitster@pobox.com>
Wed, 15 Jan 2020 22:06:19 +0000 (14:06 -0800)
Compute the various pkt-line values based on the length of the object
IDs in use.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t5530-upload-pack-error.sh

index a1d3031d40dcc3d9234c3a5f37c4130c78f7f499..4ce9a9f7041112e49061acf14e0a51076ba770d2 100755 (executable)
@@ -14,7 +14,7 @@ corrupt_repo () {
 }
 
 test_expect_success 'setup and corrupt repository' '
-
+       test_oid_init &&
        echo file >file &&
        git add file &&
        git rev-parse :file &&
@@ -31,9 +31,10 @@ test_expect_success 'fsck fails' '
 '
 
 test_expect_success 'upload-pack fails due to error in pack-objects packing' '
-
-       printf "0032want %s\n00000009done\n0000" \
-               $(git rev-parse HEAD) >input &&
+       head=$(git rev-parse HEAD) &&
+       hexsz=$(test_oid hexsz) &&
+       printf "%04xwant %s\n00000009done\n0000" \
+               $(($hexsz + 10)) $head >input &&
        test_must_fail git upload-pack . <input >/dev/null 2>output.err &&
        test_i18ngrep "unable to read" output.err &&
        test_i18ngrep "pack-objects died" output.err
@@ -51,16 +52,17 @@ test_expect_success 'fsck fails' '
 '
 test_expect_success 'upload-pack fails due to error in rev-list' '
 
-       printf "0032want %s\n0034shallow %s00000009done\n0000" \
-               $(git rev-parse HEAD) $(git rev-parse HEAD^) >input &&
+       printf "%04xwant %s\n%04xshallow %s00000009done\n0000" \
+               $(($hexsz + 10)) $(git rev-parse HEAD) \
+               $(($hexsz + 12)) $(git rev-parse HEAD^) >input &&
        test_must_fail git upload-pack . <input >/dev/null 2>output.err &&
        grep "bad tree object" output.err
 '
 
 test_expect_success 'upload-pack fails due to bad want (no object)' '
 
-       printf "0045want %s multi_ack_detailed\n00000009done\n0000" \
-               "deadbeefdeadbeefdeadbeefdeadbeefdeadbeef" >input &&
+       printf "%04xwant %s multi_ack_detailed\n00000009done\n0000" \
+               $(($hexsz + 29)) $(test_oid deadbeef) >input &&
        test_must_fail git upload-pack . <input >output 2>output.err &&
        grep "not our ref" output.err &&
        grep "ERR" output &&
@@ -70,8 +72,8 @@ test_expect_success 'upload-pack fails due to bad want (no object)' '
 test_expect_success 'upload-pack fails due to bad want (not tip)' '
 
        oid=$(echo an object we have | git hash-object -w --stdin) &&
-       printf "0045want %s multi_ack_detailed\n00000009done\n0000" \
-               "$oid" >input &&
+       printf "%04xwant %s multi_ack_detailed\n00000009done\n0000" \
+               $(($hexsz + 29)) "$oid" >input &&
        test_must_fail git upload-pack . <input >output 2>output.err &&
        grep "not our ref" output.err &&
        grep "ERR" output &&
@@ -80,8 +82,8 @@ test_expect_success 'upload-pack fails due to bad want (not tip)' '
 
 test_expect_success 'upload-pack fails due to error in pack-objects enumeration' '
 
-       printf "0032want %s\n00000009done\n0000" \
-               $(git rev-parse HEAD) >input &&
+       printf "%04xwant %s\n00000009done\n0000" \
+               $((hexsz + 10)) $(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