On Tue, Feb 23, 2016 at 03:01:43PM -0800, Junio C Hamano wrote: > John Keeping <john@xxxxxxxxxxxxx> writes: > > > My original sed version was: > > > > sed -ne "/^author /p" -e "/^summary /p" > > > > which I think will work on all platforms (we already use it in > > t0000-basic.sh) but then I decided to be too clever :-( > > > > I still think sed is simpler than introducing a new function to wrap a > > perl script. > > Let's do this, before everybody forgets what we discussed. Thanks, this looks good to me. > -- >8 -- > From: John Keeping <john@xxxxxxxxxxxxx> > Date: Sun, 21 Feb 2016 17:32:21 +0000 > Subject: [PATCH] t8005: avoid grep on non-ASCII data > > GNU grep 2.23 detects the input used in this test as binary data so it > does not work for extracting lines from a file. We could add the "-a" > option to force grep to treat the input as text, but not all > implementations support that. Instead, use sed to extract the desired > lines since it will always treat its input as text. > > While touching these lines, modernize the test style to avoid hiding the > exit status of "git blame" and remove a space following a redirection > operator. Also swap the order of the expected and actual output > files given to test_cmp; we compare expect and actual to show how > actual output differs from what is expected. > > Signed-off-by: John Keeping <john@xxxxxxxxxxxxx> > Signed-off-by: Junio C Hamano <gitster@xxxxxxxxx> > --- > t/t8005-blame-i18n.sh | 28 ++++++++++++++++------------ > 1 file changed, 16 insertions(+), 12 deletions(-) > > diff --git a/t/t8005-blame-i18n.sh b/t/t8005-blame-i18n.sh > index 847d098..75da219 100755 > --- a/t/t8005-blame-i18n.sh > +++ b/t/t8005-blame-i18n.sh > @@ -33,11 +33,15 @@ author $SJIS_NAME > summary $SJIS_MSG > EOF > > +filter_author_summary () { > + sed -n -e '/^author /p' -e '/^summary /p' "$@" > +} > + > test_expect_success !MINGW \ > 'blame respects i18n.commitencoding' ' > - git blame --incremental file | \ > - egrep "^(author|summary) " > actual && > - test_cmp actual expected > + git blame --incremental file >output && > + filter_author_summary output >actual && > + test_cmp expected actual > ' > > cat >expected <<EOF > @@ -52,9 +56,9 @@ EOF > test_expect_success !MINGW \ > 'blame respects i18n.logoutputencoding' ' > git config i18n.logoutputencoding eucJP && > - git blame --incremental file | \ > - egrep "^(author|summary) " > actual && > - test_cmp actual expected > + git blame --incremental file >output && > + filter_author_summary output >actual && > + test_cmp expected actual > ' > > cat >expected <<EOF > @@ -68,9 +72,9 @@ EOF > > test_expect_success !MINGW \ > 'blame respects --encoding=UTF-8' ' > - git blame --incremental --encoding=UTF-8 file | \ > - egrep "^(author|summary) " > actual && > - test_cmp actual expected > + git blame --incremental --encoding=UTF-8 file >output && > + filter_author_summary output >actual && > + test_cmp expected actual > ' > > cat >expected <<EOF > @@ -84,9 +88,9 @@ EOF > > test_expect_success !MINGW \ > 'blame respects --encoding=none' ' > - git blame --incremental --encoding=none file | \ > - egrep "^(author|summary) " > actual && > - test_cmp actual expected > + git blame --incremental --encoding=none file >output && > + filter_author_summary output >actual && > + test_cmp expected actual > ' > > test_done > -- > 2.7.2-532-g79873b4 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html