t4124: tweak test so that non-compliant diff(1) can also be used

The diff(1) implementation of busybox produces the unified context
format even without being asked, and it cannot produce the default
format, but a test in this script relies on.

We could rewrite the test so that we count the lines in the
postimage out of the unified context format, but the format is not
supported by some implementations of diff (e.g. HP-UX).

Accomodate busybox by adding a fallback code to count postimage
lines in unified context output, when counting in the output in the
default format finds nothing.

Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com>
[jc: applied Documentation/CodingGuidelines and tweaked the log message]
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Đoàn Trần Công Danh 2020-03-26 11:37:37 +07:00 committed by Junio C Hamano
parent d51dd4ca3a
commit f73533aa38

View File

@ -52,6 +52,13 @@ test_fix () {
# find touched lines
$DIFF file target | sed -n -e "s/^> //p" >fixed
# busybox's diff(1) doesn't output normal format
if ! test -s fixed
then
$DIFF -u file target |
grep -v '^+++ target' |
sed -ne "/^+/s/+//p" >fixed
fi
# the changed lines are all expected to change
fixed_cnt=$(wc -l <fixed)