git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: "brian m. carlson" <sandals@crustytoothpaste.net>
To: <git@vger.kernel.org>
Cc: Jonathan Tan <jonathantanmy@google.com>,
	Johannes Schindelin <Johannes.Schindelin@gmx.de>
Subject: [PATCH 12/24] t5302: make hash size independent
Date: Mon, 13 Jan 2020 12:38:45 +0000	[thread overview]
Message-ID: <20200113123857.3684632-13-sandals@crustytoothpaste.net> (raw)
In-Reply-To: <20200113123857.3684632-1-sandals@crustytoothpaste.net>

Compute the length of object IDs and pack offsets instead of hard-coding
constants.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t5302-pack-index.sh | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

diff --git a/t/t5302-pack-index.sh b/t/t5302-pack-index.sh
index 91d51b35f9..93ac003639 100755
--- a/t/t5302-pack-index.sh
+++ b/t/t5302-pack-index.sh
@@ -8,7 +8,8 @@ test_description='pack index with 64-bit offsets and object CRC'
 
 test_expect_success \
     'setup' \
-    'rm -rf .git &&
+    'test_oid_init &&
+     rm -rf .git &&
      git init &&
      git config pack.threads 1 &&
      i=1 &&
@@ -32,7 +33,9 @@ test_expect_success \
 	 echo $tree &&
 	 git ls-tree $tree | sed -e "s/.* \\([0-9a-f]*\\)	.*/\\1/"
      } >obj-list &&
-     git update-ref HEAD $commit'
+     git update-ref HEAD $commit &&
+     rawsz=$(test_oid rawsz)
+'
 
 test_expect_success \
     'pack-objects with index version 1' \
@@ -152,6 +155,7 @@ test_expect_success \
     '[index v1] 2) create a stealth corruption in a delta base reference' \
     '# This test assumes file_101 is a delta smaller than 16 bytes.
      # It should be against file_100 but we substitute its base for file_099
+     offset=$((rawsz + 4)) &&
      sha1_101=$(git hash-object file_101) &&
      sha1_099=$(git hash-object file_099) &&
      offs_101=$(index_obj_offset 1.idx $sha1_101) &&
@@ -159,8 +163,8 @@ test_expect_success \
      chmod +w ".git/objects/pack/pack-${pack1}.pack" &&
      dd of=".git/objects/pack/pack-${pack1}.pack" seek=$(($offs_101 + 1)) \
         if=".git/objects/pack/pack-${pack1}.idx" \
-        skip=$((4 + 256 * 4 + $nr_099 * 24)) \
-        bs=1 count=20 conv=notrunc &&
+        skip=$((4 + 256 * 4 + $nr_099 * offset)) \
+        bs=1 count=$rawsz conv=notrunc &&
      git cat-file blob $sha1_101 > file_101_foo1'
 
 test_expect_success \
@@ -200,8 +204,8 @@ test_expect_success \
      chmod +w ".git/objects/pack/pack-${pack1}.pack" &&
      dd of=".git/objects/pack/pack-${pack1}.pack" seek=$(($offs_101 + 1)) \
         if=".git/objects/pack/pack-${pack1}.idx" \
-        skip=$((8 + 256 * 4 + $nr_099 * 20)) \
-        bs=1 count=20 conv=notrunc &&
+        skip=$((8 + 256 * 4 + $nr_099 * rawsz)) \
+        bs=1 count=$rawsz conv=notrunc &&
      git cat-file blob $sha1_101 > file_101_foo2'
 
 test_expect_success \
@@ -226,7 +230,7 @@ test_expect_success \
      nr=$(index_obj_nr ".git/objects/pack/pack-${pack1}.idx" $obj) &&
      chmod +w ".git/objects/pack/pack-${pack1}.idx" &&
      printf xxxx | dd of=".git/objects/pack/pack-${pack1}.idx" conv=notrunc \
-        bs=1 count=4 seek=$((8 + 256 * 4 + $(wc -l <obj-list) * 20 + $nr * 4)) &&
+        bs=1 count=4 seek=$((8 + 256 * 4 + $(wc -l <obj-list) * rawsz + $nr * 4)) &&
      ( while read obj
        do git cat-file -p $obj >/dev/null || exit 1
        done <obj-list ) &&

  parent reply	other threads:[~2020-01-13 12:40 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-13 12:38 [PATCH 00/24] SHA-256 test fixes, part 8 brian m. carlson
2020-01-13 12:38 ` [PATCH 01/24] t/lib-pack: support SHA-256 brian m. carlson
2020-01-13 12:38 ` [PATCH 02/24] t3206: make hash size independent brian m. carlson
2020-01-13 12:38 ` [PATCH 03/24] t3305: annotate with SHA1 prerequisite brian m. carlson
2020-01-13 12:38 ` [PATCH 04/24] t3308: make test work with SHA-256 brian m. carlson
2020-01-13 12:38 ` [PATCH 05/24] t3309: " brian m. carlson
2020-01-13 12:38 ` [PATCH 06/24] t3310: " brian m. carlson
2020-01-13 12:38 ` [PATCH 07/24] t3311: " brian m. carlson
2020-01-13 12:38 ` [PATCH 08/24] t3404: remove SHA1 prerequisite brian m. carlson
2020-01-13 12:38 ` [PATCH 09/24] t4013: make test hash independent brian m. carlson
2020-01-13 12:38 ` [PATCH 10/24] t4060: make test work with SHA-256 brian m. carlson
2020-01-13 12:38 ` [PATCH 11/24] t4211: make test hash independent brian m. carlson
2020-01-13 12:38 ` brian m. carlson [this message]
2020-01-13 12:38 ` [PATCH 13/24] t5309: " brian m. carlson
2020-01-13 12:38 ` [PATCH 14/24] t5313: " brian m. carlson
2020-01-13 12:38 ` [PATCH 15/24] t5321: " brian m. carlson
2020-01-13 12:38 ` [PATCH 16/24] t5515: " brian m. carlson
2020-01-13 12:38 ` [PATCH 17/24] t5318: update for SHA-256 brian m. carlson
2020-01-13 13:50   ` Eric Sunshine
2020-01-13 23:14     ` brian m. carlson
2020-01-13 12:38 ` [PATCH 18/24] t5616: use correct filter syntax brian m. carlson
2020-01-13 20:28   ` [PATCH] t5616: make robust to delta base change Jonathan Tan
2020-01-13 23:11     ` brian m. carlson
2020-01-25 22:43     ` brian m. carlson
2020-01-13 12:38 ` [PATCH 19/24] t5607: make hash size independent brian m. carlson
2020-01-13 12:38 ` [PATCH 20/24] t5703: make test work with SHA-256 brian m. carlson
2020-01-13 13:53   ` Eric Sunshine
2020-01-13 23:15     ` brian m. carlson
2020-01-13 12:38 ` [PATCH 21/24] t5703: switch tests to use test_oid brian m. carlson
2020-01-13 12:38 ` [PATCH 22/24] t6000: abstract away SHA-1-specific constants brian m. carlson
2020-01-13 12:38 ` [PATCH 23/24] t6006: make hash size independent brian m. carlson
2020-01-13 12:38 ` [PATCH 24/24] t6024: update for SHA-256 brian m. carlson
2020-01-13 13:41 ` [PATCH 00/24] SHA-256 test fixes, part 8 Eric Sunshine
2020-01-13 23:17   ` brian m. carlson
2020-01-13 23:34     ` Eric Sunshine
2020-01-16  0:28 ` Johannes Schindelin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200113123857.3684632-13-sandals@crustytoothpaste.net \
    --to=sandals@crustytoothpaste.net \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=git@vger.kernel.org \
    --cc=jonathantanmy@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).