@leroysheep / LeeRoySheep / commits / eb49c6ef43

t6006: don't use iconv(1) without ICONV prereq

Two tests in t6006 depend on the iconv(1) prerequisite to reencode a commit message. This executable may not even exist though in case the prereq is not set, which will cause the tests to fail. Fix this by using UTF-8 instead when the prereq is not set. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Patrick Steinhardt committed Feb 20, 2026 at 09:26 UTC eb49c6ef43e3f7ac0050bddf42ea85641965dc90
1 file changed +21 -8
t/t6006-rev-list-format.sh
+21 -8
index eb93d68d7d..581984467d 100755 --- a/t/t6006-rev-list-format.sh +++ b/t/t6006-rev-list-format.sh @@ -378,15 +378,23 @@ test_expect_success 'rev-list %C(auto,...) respects --color' ' test_cmp expect actual ' -iconv -f utf-8 -t $test_encoding > commit-msg <<EOF -Test printing of complex bodies +test_expect_success 'setup complex body' ' + message=$(cat <<-EOF + Test printing of complex bodies -This commit message is much longer than the others, -and it will be encoded in $test_encoding. We should therefore -include an ISO8859 character: ¡bueno! -EOF + This commit message is much longer than the others, + and it will be encoded in $test_encoding. We should therefore + include an ISO8859 character: ¡bueno! + EOF + ) && + + if test_have_prereq ICONV + then + echo "$message" | iconv -f utf-8 -t $test_encoding >commit-msg + else + echo "$message" >commit-msg + fi && -test_expect_success 'setup complex body' ' git config i18n.commitencoding $test_encoding && echo change2 >foo && git commit -a -F commit-msg && head3=$(git rev-parse --verify HEAD) && @@ -448,7 +456,12 @@ test_expect_success 'setup expected messages (for test %b)' ' commit $head2 commit $head1 EOF - iconv -f utf-8 -t $test_encoding expected.utf-8 >expected.ISO8859-1 + if test_have_prereq ICONV + then + iconv -f utf-8 -t $test_encoding expected.utf-8 >expected.ISO8859-1 + else + cp expected.utf-8 expected.ISO8859-1 + fi ' test_format complex-body %b <expected.ISO8859-1