git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v3 02/11] t0000: use hash translation table

From
brian m. carlson <sandals@crustytoothpaste.net>
Date
Aug 29, 2018, 00:56 UTC
Message-ID
<20180829005642.980617-3-sandals@crustytoothpaste.net>
In-Reply-To
<20180829005642.980617-1-sandals@crustytoothpaste.net>

If the hash we're using is 32 bytes in size, attempting to insert a 20-byte object name won't work. Since these are synthesized objects that are almost all zeros, look them up in a translation table.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t0000-basic.sh | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/t/t0000-basic.sh b/t/t0000-basic.sh
index e3cace299e..b7f57ea052 100755
--- a/t/t0000-basic.sh
+++ b/t/t0000-basic.sh
@@ -1013,12 +1013,13 @@ test_expect_success SHA1 'validate object ID for a known tree' '
 
 test_expect_success 'put invalid objects into the index' '
 	rm -f .git/index &&
-	cat >badobjects <<-\EOF &&
-	100644 blob 1000000000000000000000000000000000000000	dir/file1
-	100644 blob 2000000000000000000000000000000000000000	dir/file2
-	100644 blob 3000000000000000000000000000000000000000	dir/file3
-	100644 blob 4000000000000000000000000000000000000000	dir/file4
-	100644 blob 5000000000000000000000000000000000000000	dir/file5
+	suffix=$(echo $ZERO_OID | sed -e "s/^.//") &&
+	cat >badobjects <<-EOF &&
+	100644 blob $(test_oid 001)	dir/file1
+	100644 blob $(test_oid 002)	dir/file2
+	100644 blob $(test_oid 003)	dir/file3
+	100644 blob $(test_oid 004)	dir/file4
+	100644 blob $(test_oid 005)	dir/file5
 	EOF
 	git update-index --index-info <badobjects
 '
Previous: brian m. carlsonNext: brian m. carlson
Message 7 of 19 in “Hash-independent tests (part 3)”
  1. 00/11 Hash-independent tests (part 3)brian m. carlson, Aug 29, 2018
  2. 01/11 t: add tool to translate hash-related valuesbrian m. carlson, Aug 29, 2018
  3. Jonathan NiederAug 29, 2018
  4. brian m. carlsonAug 29, 2018
  5. Derrick StoleeAug 29, 2018
  6. brian m. carlsonAug 29, 2018
  7. 02/11 t0000: use hash translation tablebrian m. carlson, Aug 29, 2018
  8. 03/11 t0000: update tests for SHA-256brian m. carlson, Aug 29, 2018
  9. 05/11 t0027: make hash size independentbrian m. carlson, Aug 29, 2018
  10. Torsten BögershausenAug 31, 2018
  11. Eric SunshineAug 31, 2018
  12. brian m. carlsonSep 1, 2018
  13. 04/11 t0002: abstract away SHA-1 specific constantsbrian m. carlson, Aug 29, 2018
  14. 07/11 t1006: make hash size independentbrian m. carlson, Aug 29, 2018
  15. 06/11 t0064: make hash size independentbrian m. carlson, Aug 29, 2018
  16. 08/11 t1400: switch hard-coded object ID to variablebrian m. carlson, Aug 29, 2018
  17. 09/11 t1405: make hash size independentbrian m. carlson, Aug 29, 2018
  18. 10/11 t1406: make hash-size independentbrian m. carlson, Aug 29, 2018
  19. 11/11 t1407: make hash size independentbrian m. carlson, Aug 29, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.