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

[PATCH v5 08/39] t6500: specify test values for SHA-256

From
brian m. carlson <sandals@crustytoothpaste.net>
Date
Jul 28, 2020, 23:34 UTC
Message-ID
<20200728233446.3066485-9-sandals@crustytoothpaste.net>
In-Reply-To
<20200728233446.3066485-1-sandals@crustytoothpaste.net>

In this test, we want to produce several blobs whose first two hex characters are "17", since we look at this object directory as a proxy for how many loose objects there are before we need to GC. Use test_oid_cache to specify strings that will hash to the right values when turned into blobs.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t6500-gc.sh | 27 ++++++++++++++++++++++-----
 1 file changed, 22 insertions(+), 5 deletions(-)
diff --git a/t/t6500-gc.sh b/t/t6500-gc.sh
index 0a69a67117..4a3b8f48ac 100755
--- a/t/t6500-gc.sh
+++ b/t/t6500-gc.sh
@@ -10,7 +10,24 @@ test_expect_success 'setup' '
 	# do not let the amount of physical memory affects gc
 	# behavior, make sure we always pack everything to one pack by
 	# default
-	git config gc.bigPackThreshold 2g
+	git config gc.bigPackThreshold 2g &&
+
+	# These are simply values which, when hashed as a blob with a newline,
+	# produce a hash where the first byte is 0x17 in their respective
+	# algorithms.
+	test_oid_cache <<-EOF
+	obj1 sha1:263
+	obj1 sha256:34
+
+	obj2 sha1:410
+	obj2 sha256:174
+
+	obj3 sha1:523
+	obj3 sha256:313
+
+	obj4 sha1:790
+	obj4 sha256:481
+	EOF
 '
 
 test_expect_success 'gc empty repository' '
@@ -85,13 +102,13 @@ test_expect_success 'auto gc with too many loose objects does not attempt to cre
 	# We need to create two object whose sha1s start with 17
 	# since this is what git gc counts.  As it happens, these
 	# two blobs will do so.
-	test_commit 263 &&
-	test_commit 410 &&
+	test_commit "$(test_oid obj1)" &&
+	test_commit "$(test_oid obj2)" &&
 	# Our first gc will create a pack; our second will create a second pack
 	git gc --auto &&
 	ls .git/objects/pack | sort >existing_packs &&
-	test_commit 523 &&
-	test_commit 790 &&
+	test_commit "$(test_oid obj3)" &&
+	test_commit "$(test_oid obj4)" &&
 
 	git gc --auto 2>err &&
 	test_i18ngrep ! "^warning:" err &&
Previous: brian m. carlsonNext: brian m. carlson
Message 41 of 116 in “SHA-256, part 3/3”
  1. 00/39 SHA-256, part 3/3brian m. carlson, Jul 28, 2020
  2. 02/39 t1001: use $ZERO_OIDbrian m. carlson, Jul 28, 2020
  3. 03/39 t3305: make hash agnosticbrian m. carlson, Jul 28, 2020
  4. 04/39 t3404: prepare 'short SHA-1 collision' tests for SHA-256brian m. carlson, Jul 28, 2020
  5. 06/39 t6101: make hash size independentbrian m. carlson, Jul 28, 2020
  6. 10/39 t7003: compute appropriate length constantbrian m. carlson, Jul 28, 2020
  7. 12/39 t7201: abstract away SHA-1-specific constantsbrian m. carlson, Jul 28, 2020
  8. 15/39 t7405: make hash size independentbrian m. carlson, Jul 28, 2020
  9. 13/39 t7102: abstract away SHA-1-specific constantsbrian m. carlson, Jul 28, 2020
  10. 20/39 t8011: make hash size independentbrian m. carlson, Jul 28, 2020
  11. 17/39 t7508: use $ZERO_OID instead of hard-coded constantbrian m. carlson, Jul 28, 2020
  12. 27/39 t5308: make test work with SHA-256brian m. carlson, Jul 28, 2020
  13. 26/39 t9700: make hash size independentbrian m. carlson, Jul 28, 2020
  14. 24/39 t9350: make hash size independentbrian m. carlson, Jul 28, 2020
  15. 22/39 t9300: use $ZERO_OID instead of hard-coded object IDbrian m. carlson, Jul 28, 2020
  16. 32/39 setup: add support for reading extensions.objectformatbrian m. carlson, Jul 28, 2020
  17. 35/39 t: allow testing different hash algorithms via environmentbrian m. carlson, Jul 28, 2020
  18. 38/39 docs: add documentation for extensions.objectFormatbrian m. carlson, Jul 28, 2020
  19. 36/39 t: make SHA1 prerequisite depend on default hashbrian m. carlson, Jul 28, 2020
  20. Eric SunshineJul 29, 2020
  21. 31/39 bundle: add new version for use with SHA-256brian m. carlson, Jul 28, 2020
  22. Eric SunshineJul 29, 2020
  23. brian m. carlsonJul 29, 2020
  24. 39/39 t: remove test_oid_init in testsbrian m. carlson, Jul 28, 2020
  25. 34/39 t: add test_oid option to select hash algorithmbrian m. carlson, Jul 28, 2020
  26. 37/39 ci: run tests with SHA-256brian m. carlson, Jul 28, 2020
  27. 25/39 t9500: ensure that algorithm info is preserved in configbrian m. carlson, Jul 28, 2020
  28. 01/39 t: make test-bloom initialize repositorybrian m. carlson, Jul 28, 2020
  29. 05/39 t6100: make hash size independentbrian m. carlson, Jul 28, 2020
  30. 14/39 t7400: make hash size independentbrian m. carlson, Jul 28, 2020
  31. 11/39 t7063: make hash size independentbrian m. carlson, Jul 28, 2020
  32. 09/39 t6501: avoid hard-coded objectsbrian m. carlson, Jul 28, 2020
  33. 07/39 t6301: make hash size independentbrian m. carlson, Jul 28, 2020
  34. 29/39 http-fetch: set up git directory before parsing pack hashesbrian m. carlson, Jul 28, 2020
  35. Eric SunshineJul 29, 2020
  36. 21/39 t9300: abstract away SHA-1-specific constantsbrian m. carlson, Jul 28, 2020
  37. 30/39 builtin/verify-pack: implement an --object-format optionbrian m. carlson, Jul 28, 2020
  38. 33/39 Enable SHA-256 support by defaultbrian m. carlson, Jul 28, 2020
  39. Eric SunshineJul 29, 2020
  40. 28/39 t0410: mark test with SHA1 prerequisitebrian m. carlson, Jul 28, 2020
  41. 08/39 t6500: specify test values for SHA-256brian m. carlson, Jul 28, 2020
  42. 18/39 t8002: make hash size independentbrian m. carlson, Jul 28, 2020
  43. Eric SunshineJul 29, 2020
  44. brian m. carlsonJul 29, 2020
  45. 19/39 t8003: make hash size independentbrian m. carlson, Jul 28, 2020
  46. 23/39 t9301: make hash size independentbrian m. carlson, Jul 28, 2020
  47. 16/39 t7506: avoid checking for SHA-1-specific constantsbrian m. carlson, Jul 28, 2020
  48. 00/39 SHA-256, part 3/3brian m. carlson, Jul 29, 2020
  49. 01/39 t: make test-bloom initialize repositorybrian m. carlson, Jul 29, 2020
  50. 04/39 t3404: prepare 'short SHA-1 collision' tests for SHA-256brian m. carlson, Jul 29, 2020
  51. 07/39 t6301: make hash size independentbrian m. carlson, Jul 29, 2020
  52. 09/39 t6501: avoid hard-coded objectsbrian m. carlson, Jul 29, 2020
  53. 11/39 t7063: make hash size independentbrian m. carlson, Jul 29, 2020
  54. 13/39 t7102: abstract away SHA-1-specific constantsbrian m. carlson, Jul 29, 2020
  55. 16/39 t7506: avoid checking for SHA-1-specific constantsbrian m. carlson, Jul 29, 2020
  56. 17/39 t7508: use $ZERO_OID instead of hard-coded constantbrian m. carlson, Jul 29, 2020
  57. 19/39 t8003: make hash size independentbrian m. carlson, Jul 29, 2020
  58. 22/39 t9300: use $ZERO_OID instead of hard-coded object IDbrian m. carlson, Jul 29, 2020
  59. 25/39 t9500: ensure that algorithm info is preserved in configbrian m. carlson, Jul 29, 2020
  60. 27/39 t5308: make test work with SHA-256brian m. carlson, Jul 29, 2020
  61. 26/39 t9700: make hash size independentbrian m. carlson, Jul 29, 2020
  62. 31/39 bundle: add new version for use with SHA-256brian m. carlson, Jul 29, 2020
  63. 38/39 docs: add documentation for extensions.objectFormatbrian m. carlson, Jul 29, 2020
  64. 33/39 repository: enable SHA-256 support by defaultbrian m. carlson, Jul 29, 2020
  65. 37/39 ci: run tests with SHA-256brian m. carlson, Jul 29, 2020
  66. 30/39 builtin/verify-pack: implement an --object-format optionbrian m. carlson, Jul 29, 2020
  67. 35/39 t: allow testing different hash algorithms via environmentbrian m. carlson, Jul 29, 2020
  68. 32/39 setup: add support for reading extensions.objectformatbrian m. carlson, Jul 29, 2020
  69. 39/39 t: remove test_oid_init in testsbrian m. carlson, Jul 29, 2020
  70. 03/39 t3305: make hash agnosticbrian m. carlson, Jul 29, 2020
  71. 05/39 t6100: make hash size independentbrian m. carlson, Jul 29, 2020
  72. 08/39 t6500: specify test values for SHA-256brian m. carlson, Jul 29, 2020
  73. 12/39 t7201: abstract away SHA-1-specific constantsbrian m. carlson, Jul 29, 2020
  74. 06/39 t6101: make hash size independentbrian m. carlson, Jul 29, 2020
  75. 18/39 t8002: make hash size independentbrian m. carlson, Jul 29, 2020
  76. 10/39 t7003: compute appropriate length constantbrian m. carlson, Jul 29, 2020
  77. 14/39 t7400: make hash size independentbrian m. carlson, Jul 29, 2020
  78. 15/39 t7405: make hash size independentbrian m. carlson, Jul 29, 2020
  79. 02/39 t1001: use $ZERO_OIDbrian m. carlson, Jul 29, 2020
  80. 36/39 t: make SHA1 prerequisite depend on default hashbrian m. carlson, Jul 29, 2020
  81. 28/39 t0410: mark test with SHA1 prerequisitebrian m. carlson, Jul 29, 2020
  82. 21/39 t9300: abstract away SHA-1-specific constantsbrian m. carlson, Jul 29, 2020
  83. 24/39 t9350: make hash size independentbrian m. carlson, Jul 29, 2020
  84. 23/39 t9301: make hash size independentbrian m. carlson, Jul 29, 2020
  85. 20/39 t8011: make hash size independentbrian m. carlson, Jul 29, 2020
  86. 29/39 http-fetch: set up git directory before parsing pack hashesbrian m. carlson, Jul 29, 2020
  87. 34/39 t: add test_oid option to select hash algorithmbrian m. carlson, Jul 29, 2020
  88. Eric SunshineJul 30, 2020
  89. Junio C HamanoJul 30, 2020
  90. Ævar Arnfjörð BjarmasonMar 10, 2021
  91. Elijah NewrenMar 10, 2021
  92. Jeff KingMar 10, 2021
  93. 0/3 sha256 fixes for filter-branchJeff King, Mar 10, 2021
  94. 3/3 filter-branch: drop $_x40 globJeff King, Mar 10, 2021
  95. Junio C HamanoMar 10, 2021
  96. 1/4 git-bisect: remove unused SHA-1 $x40 shell variableÆvar Arnfjörð Bjarmason, Mar 11, 2021
  97. 0/4 bisect + tests: remove old $_x05, $_x35 and $_x40 variablesÆvar Arnfjörð Bjarmason, Mar 11, 2021
  98. 4/4 tests: get rid of $_x05 from the test suiteÆvar Arnfjörð Bjarmason, Mar 11, 2021
  99. Junio C HamanoMar 11, 2021
  100. Ævar Arnfjörð BjarmasonMar 11, 2021
  101. Junio C HamanoMar 11, 2021
  102. 3/4 shortlog tests: rewrite to get rid of --abbrev=35 hardcodingÆvar Arnfjörð Bjarmason, Mar 11, 2021
  103. Junio C HamanoMar 11, 2021
  104. Jeff KingMar 11, 2021
  105. 2/4 test-lib: remove unused $_x40 and $_z40 variablesÆvar Arnfjörð Bjarmason, Mar 11, 2021
  106. Junio C HamanoMar 11, 2021
  107. 1/3 t7003: test ref rewriting explicitlyJeff King, Mar 10, 2021
  108. Ævar Arnfjörð BjarmasonMar 11, 2021
  109. brian m. carlsonMar 11, 2021
  110. Jeff KingMar 11, 2021
  111. brian m. carlsonMar 11, 2021
  112. 2/3 filter-branch: drop multiple-ancestor warningJeff King, Mar 10, 2021
  113. Junio C HamanoMar 10, 2021
  114. Elijah NewrenMar 10, 2021
  115. Junio C HamanoMar 10, 2021
  116. brian m. carlsonMar 10, 2021

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.