t6500: specify test values for SHA-256
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> Reviewed-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
brian m. carlson committed
Jul 29, 2020 at 23:13 UTC
368f3cb051cfb27b3b12715416787481ec903786
1 file changed
+22
-5
t/t6500-gc.sh
+22
-5
@@ -10,7 +10,24 @@ test_expect_success 'setup' '
10
# do not let the amount of physical memory affects gc
11
# behavior, make sure we always pack everything to one pack by
12
# default
13
- git config gc.bigPackThreshold 2g
13
+ git config gc.bigPackThreshold 2g &&
14
+
15
+ # These are simply values which, when hashed as a blob with a newline,
16
+ # produce a hash where the first byte is 0x17 in their respective
17
+ # algorithms.
18
+ test_oid_cache <<-EOF
19
+ obj1 sha1:263
20
+ obj1 sha256:34
21
+
22
+ obj2 sha1:410
23
+ obj2 sha256:174
24
+
25
+ obj3 sha1:523
26
+ obj3 sha256:313
27
+
28
+ obj4 sha1:790
29
+ obj4 sha256:481
30
+ EOF
31
'
32
33
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
102
# We need to create two object whose sha1s start with 17
103
# since this is what git gc counts. As it happens, these
104
# two blobs will do so.
88
- test_commit 263 &&
89
- test_commit 410 &&
105
+ test_commit "$(test_oid obj1)" &&
106
+ test_commit "$(test_oid obj2)" &&
107
# Our first gc will create a pack; our second will create a second pack
108
git gc --auto &&
109
ls .git/objects/pack | sort >existing_packs &&
93
- test_commit 523 &&
94
- test_commit 790 &&
110
+ test_commit "$(test_oid obj3)" &&
111
+ test_commit "$(test_oid obj4)" &&
112
113
git gc --auto 2>err &&
114
test_i18ngrep ! "^warning:" err &&