Skip to content

Commit

Permalink
t9301: make hash size independent
Browse files Browse the repository at this point in the history
Instead of using a hard-coded all-zeros object ID, use $ZERO_OID.
Compute the length of the object IDs in use and use this instead of
hard-coding the constant 40.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Reviewed-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
bk2204 authored and gitster committed Jul 30, 2020
1 parent 287bb3a commit b6e5005
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions t/t9301-fast-import-notes.sh
Original file line number Diff line number Diff line change
Expand Up @@ -470,12 +470,13 @@ test_expect_success 'add lots of commits and notes' '
'

test_expect_success 'verify that lots of notes trigger a fanout scheme' '
hexsz=$(test_oid hexsz) &&
# None of the entries in the top-level notes tree should be a full SHA1
git ls-tree --name-only refs/notes/many_notes |
while read path
do
if test $(expr length "$path") -ge 40
if test $(expr length "$path") -ge $hexsz
then
return 1
fi
Expand Down Expand Up @@ -518,7 +519,7 @@ test_expect_success 'verify that importing a notes tree respects the fanout sche
git ls-tree --name-only refs/notes/other_notes |
while read path
do
if test $(expr length "$path") -ge 40
if test $(expr length "$path") -ge $hexsz
then
return 1
fi
Expand Down Expand Up @@ -593,7 +594,7 @@ test_expect_success 'verify that changing notes respect existing fanout' '
git ls-tree --name-only refs/notes/many_notes |
while read path
do
if test $(expr length "$path") -ge 40
if test $(expr length "$path") -ge $hexsz
then
return 1
fi
Expand All @@ -616,7 +617,7 @@ i=$(($num_commits - $remaining_notes))
for sha1 in $(git rev-list -n $i refs/heads/many_commits)
do
cat >>input <<INPUT_END
N 0000000000000000000000000000000000000000 $sha1
N $ZERO_OID $sha1
INPUT_END
done

Expand Down Expand Up @@ -646,7 +647,6 @@ test_expect_success 'remove lots of notes' '
'

test_expect_success 'verify that removing notes trigger fanout consolidation' '
# All entries in the top-level notes tree should be a full SHA1
git ls-tree --name-only -r refs/notes/many_notes |
while read path
Expand All @@ -656,7 +656,7 @@ test_expect_success 'verify that removing notes trigger fanout consolidation' '
test "$path" = "deadbeef" && continue
test "$path" = "de/adbeef" && continue
if test $(expr length "$path") -ne 40
if test $(expr length "$path") -ne $hexsz
then
return 1
fi
Expand Down

0 comments on commit b6e5005

Please sign in to comment.