For testing truncated log messages 'commit_msg' function uses `sed` to
cut a message. On various platforms `sed` behaves differently and
results of its work depend on locales installed. So, avoid using `sed`.
Use predefined expected outputs instead of calculated ones.

Signed-off-by: Alexey Shumkin <alex.crez...@gmail.com>
Signed-off-by: Junio C Hamano <gits...@pobox.com>
---
 t/t4205-log-pretty-formats.sh | 26 ++++++++++----------------
 1 file changed, 10 insertions(+), 16 deletions(-)

diff --git a/t/t4205-log-pretty-formats.sh b/t/t4205-log-pretty-formats.sh
index 2933c63..73fd236 100755
--- a/t/t4205-log-pretty-formats.sh
+++ b/t/t4205-log-pretty-formats.sh
@@ -7,25 +7,19 @@
 test_description='Test pretty formats'
 . ./test-lib.sh
 
+sample_utf8_part=$(printf "f\303\244ng")
+
 commit_msg () {
        # String "initial. initial" partly in German
        # (translated with Google Translate),
        # encoded in UTF-8, used as a commit log message below.
-       msg=$(printf "initial. anf\303\244nglich")
+       msg="initial. an${sample_utf8_part}lich"
        if test -n "$1"
        then
-               msg=$(echo $msg | iconv -f utf-8 -t $1)
-       fi
-       if test -n "$2" -a -n "$3"
-       then
-               # cut string, replace cut part with two dots
-               # $2 - chars count from the beginning of the string
-               # $3 - "trailing" chars
-               # LC_ALL is set to make `sed` interpret "." as a UTF-8 char not 
a byte
-               # as it does with C locale
-               msg=$(echo $msg | LC_ALL=en_US.UTF-8 sed -e 
"s/^\(.\{$2\}\)$3/\1../")
+               print $msg | iconv -f utf-8 -t "$1"
+       else
+               print $msg
        fi
-       echo $msg
 }
 
 test_expect_success 'set up basic repos' '
@@ -193,7 +187,7 @@ test_expect_success 'left alignment formatting with trunc' '
 message ..
 message ..
 add bar  Z
-$(commit_msg "" "8" "..*$")
+initial...
 EOF
        test_cmp expected actual
 '
@@ -206,7 +200,7 @@ test_expect_success 'left alignment formatting with ltrunc' 
'
 ..sage two
 ..sage one
 add bar  Z
-$(commit_msg "" "0" ".\{11\}")
+..${sample_utf8_part}lich
 EOF
        test_cmp expected actual
 '
@@ -219,7 +213,7 @@ test_expect_success 'left alignment formatting with mtrunc' 
'
 mess.. two
 mess.. one
 add bar  Z
-$(commit_msg "" "4" ".\{11\}")
+init..lich
 EOF
        test_cmp expected actual
 '
@@ -311,7 +305,7 @@ test_expect_success 'left/right alignment formatting with 
stealing' '
 short long  long long
 message ..   A U Thor
 add bar      A U Thor
-$(commit_msg "" "8" "..*$")   A U Thor
+initial...   A U Thor
 EOF
        test_cmp expected actual
 '
-- 
1.8.3.2.16.gb1f0d63

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to