mirror of
https://github.com/git/git
synced 2024-08-24 18:26:02 +00:00
Merge branch 'jk/t1006-cat-file-objectsize-disk'
Test update. * jk/t1006-cat-file-objectsize-disk: t1006: prefer shell loop to awk for packed object sizes t1006: add tests for %(objectsize:disk)
This commit is contained in:
commit
0ebbaa07d0
|
@ -1100,6 +1100,42 @@ test_expect_success 'cat-file --batch="batman" with --batch-all-objects will wor
|
|||
cmp expect actual
|
||||
'
|
||||
|
||||
test_expect_success 'cat-file %(objectsize:disk) with --batch-all-objects' '
|
||||
# our state has both loose and packed objects,
|
||||
# so find both for our expected output
|
||||
{
|
||||
find .git/objects/?? -type f |
|
||||
awk -F/ "{ print \$0, \$3\$4 }" |
|
||||
while read path oid
|
||||
do
|
||||
size=$(test_file_size "$path") &&
|
||||
echo "$oid $size" ||
|
||||
return 1
|
||||
done &&
|
||||
rawsz=$(test_oid rawsz) &&
|
||||
find .git/objects/pack -name "*.idx" |
|
||||
while read idx
|
||||
do
|
||||
git show-index <"$idx" >idx.raw &&
|
||||
sort -nr <idx.raw >idx.sorted &&
|
||||
packsz=$(test_file_size "${idx%.idx}.pack") &&
|
||||
end=$((packsz - rawsz)) &&
|
||||
while read start oid rest
|
||||
do
|
||||
size=$((end - start)) &&
|
||||
end=$start &&
|
||||
echo "$oid $size" ||
|
||||
return 1
|
||||
done <idx.sorted ||
|
||||
return 1
|
||||
done
|
||||
} >expect.raw &&
|
||||
sort <expect.raw >expect &&
|
||||
git cat-file --batch-all-objects \
|
||||
--batch-check="%(objectname) %(objectsize:disk)" >actual &&
|
||||
test_cmp expect actual
|
||||
'
|
||||
|
||||
test_expect_success 'set up replacement object' '
|
||||
orig=$(git rev-parse HEAD) &&
|
||||
git cat-file commit $orig >orig &&
|
||||
|
|
Loading…
Reference in a new issue