]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t0614: use numerical comparison with test_line_count
authorbrian m. carlson <sandals@crustytoothpaste.net>
Fri, 28 Nov 2025 01:21:05 +0000 (01:21 +0000)
committerJunio C Hamano <gitster@pobox.com>
Fri, 28 Nov 2025 03:06:01 +0000 (19:06 -0800)
In this comparison, we want to know whether the number of lines is
greater than 1.  Our test_line_count function passes the first argument
as the comparison operator to test, so what we want is a numerical
comparison, not a string comparison.  While this does not produce a
functional problem now, it could very well if we expected two or more
items, in which case the value "10" would not match when it should.

Furthermore, the "<" and ">" comparisons are new in POSIX 1003.1-2024
and we don't want to require such a new version of POSIX since many
popular and supported operating systems were released before that
version of POSIX was released.

Finally, zsh's builtin test operator does not like the greater-than sign
in "test", since it is only supported in the double-bracket extension.
This has been reported and will be addressed in a future version, but
since our code is also technically incorrect, as well as not very
compatible, let's fix it by using a numeric comparison.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t0614-reftable-fsck.sh

index 85cc47d67e13bf88a6a22deadd86587244876153..677eb9143c9de4e6b82011e022459e2d07be89fe 100755 (executable)
@@ -20,7 +20,7 @@ test_expect_success "no errors reported on a well formed repository" '
                done &&
 
                # The repository should end up with multiple tables.
-               test_line_count ">" 1 .git/reftable/tables.list &&
+               test_line_count -gt 1 .git/reftable/tables.list &&
 
                git refs verify 2>err &&
                test_must_be_empty err