t0064: make hash size independent
Compute test values of the appropriate size instead of hard-coding 40-character values. Rename the echo20 function to echoid, since the values may be of varying sizes. Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
brian m. carlson committed
Sep 13, 2018 at 05:17 UTC
1374003db19a6d944bb0ff735855d491e03d57e1
1 file changed
+27
-22
t/t0064-sha1-array.sh
+27
-22
@@ -3,30 +3,30 @@
3
test_description='basic tests for the SHA1 array implementation'
4
. ./test-lib.sh
5
6
-echo20 () {
6
+echoid () {
7
prefix="${1:+$1 }"
8
shift
9
while test $# -gt 0
10
do
11
- echo "$prefix$1$1$1$1$1$1$1$1$1$1$1$1$1$1$1$1$1$1$1$1"
11
+ echo "$prefix$ZERO_OID" | sed -e "s/00/$1/g"
12
shift
13
done
14
}
15
16
test_expect_success 'ordered enumeration' '
17
- echo20 "" 44 55 88 aa >expect &&
17
+ echoid "" 44 55 88 aa >expect &&
18
{
19
- echo20 append 88 44 aa 55 &&
19
+ echoid append 88 44 aa 55 &&
20
echo for_each_unique
21
} | test-tool sha1-array >actual &&
22
test_cmp expect actual
23
'
24
25
test_expect_success 'ordered enumeration with duplicate suppression' '
26
- echo20 "" 44 55 88 aa >expect &&
26
+ echoid "" 44 55 88 aa >expect &&
27
{
28
- echo20 append 88 44 aa 55 &&
29
- echo20 append 88 44 aa 55 &&
28
+ echoid append 88 44 aa 55 &&
29
+ echoid append 88 44 aa 55 &&
30
echo for_each_unique
31
} | test-tool sha1-array >actual &&
32
test_cmp expect actual
@@ -34,8 +34,8 @@ test_expect_success 'ordered enumeration with duplicate suppression' '
34
35
test_expect_success 'lookup' '
36
{
37
- echo20 append 88 44 aa 55 &&
38
- echo20 lookup 55
37
+ echoid append 88 44 aa 55 &&
38
+ echoid lookup 55
39
} | test-tool sha1-array >actual &&
40
n=$(cat actual) &&
41
test "$n" -eq 1
@@ -43,8 +43,8 @@ test_expect_success 'lookup' '
43
44
test_expect_success 'lookup non-existing entry' '
45
{
46
- echo20 append 88 44 aa 55 &&
47
- echo20 lookup 33
46
+ echoid append 88 44 aa 55 &&
47
+ echoid lookup 33
48
} | test-tool sha1-array >actual &&
49
n=$(cat actual) &&
50
test "$n" -lt 0
@@ -52,9 +52,9 @@ test_expect_success 'lookup non-existing entry' '
52
53
test_expect_success 'lookup with duplicates' '
54
{
55
- echo20 append 88 44 aa 55 &&
56
- echo20 append 88 44 aa 55 &&
57
- echo20 lookup 55
55
+ echoid append 88 44 aa 55 &&
56
+ echoid append 88 44 aa 55 &&
57
+ echoid lookup 55
58
} | test-tool sha1-array >actual &&
59
n=$(cat actual) &&
60
test "$n" -ge 2 &&
@@ -63,19 +63,24 @@ test_expect_success 'lookup with duplicates' '
63
64
test_expect_success 'lookup non-existing entry with duplicates' '
65
{
66
- echo20 append 88 44 aa 55 &&
67
- echo20 append 88 44 aa 55 &&
68
- echo20 lookup 66
66
+ echoid append 88 44 aa 55 &&
67
+ echoid append 88 44 aa 55 &&
68
+ echoid lookup 66
69
} | test-tool sha1-array >actual &&
70
n=$(cat actual) &&
71
test "$n" -lt 0
72
'
73
74
test_expect_success 'lookup with almost duplicate values' '
75
+ # n-1 5s
76
+ root=$(echoid "" 55) &&
77
+ root=${root%5} &&
78
{
76
- echo "append 5555555555555555555555555555555555555555" &&
77
- echo "append 555555555555555555555555555555555555555f" &&
78
- echo20 lookup 55
79
+ id1="${root}5" &&
80
+ id2="${root}f" &&
81
+ echo "append $id1" &&
82
+ echo "append $id2" &&
83
+ echoid lookup 55
84
} | test-tool sha1-array >actual &&
85
n=$(cat actual) &&
86
test "$n" -eq 0
@@ -83,8 +88,8 @@ test_expect_success 'lookup with almost duplicate values' '
88
89
test_expect_success 'lookup with single duplicate value' '
90
{
86
- echo20 append 55 55 &&
87
- echo20 lookup 55
91
+ echoid append 55 55 &&
92
+ echoid lookup 55
93
} | test-tool sha1-array >actual &&
94
n=$(cat actual) &&
95
test "$n" -ge 0 &&