Subject: [PATCH 2/2] test: check that "git blame -e" uses mailmap correctly

From: Jonathan Nieder <[email-masked]>
Date: Tue, 14 Feb 2012 14:36:03 -0600

From: Felipe Contreras <[email-masked]>

Until f026358e ("mailmap: always return a plain mail address from
map_user()", 2012-02-05), git blame -e would add a spurious '>' after
the unchanged email address with brackets it passed to the mailmap
machinery, resulting in lines with a doubled '>' like this:

 620456e6 (<[email-masked]>>   2005-04-07 15:20:13 -0700 8) eight

Add a test to make sure it doesn't happen again.  This reuses the test
data for the existing "shortlog -e" test so it also tests other kinds
of mail mapping.

[jn: fixed some cut+paste cruft, added a patch description]

Signed-off-by: Felipe Contreras <[email-masked]>
Signed-off-by: Jonathan Nieder <[email-masked]>
---
 t/t4203-mailmap.sh |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/t/t4203-mailmap.sh b/t/t4203-mailmap.sh
index 45526395..ef900d84 100755
--- a/t/t4203-mailmap.sh
+++ b/t/t4203-mailmap.sh
@@ -267,4 +267,20 @@ test_expect_success 'Blame output (complex mapping)' '
 	test_cmp expect actual.fuzz
 '
 
+cat >expect <<\EOF
+^OBJI (<[email-masked]>       DATE 1) one
+OBJID (<[email-masked]>             DATE 2) two
+OBJID (<[email-masked]>          DATE 3) three
+OBJID (<[email-masked]>          DATE 4) four
+OBJID (<[email-masked]> DATE 5) five
+OBJID (<[email-masked]> DATE 6) six
+OBJID (<[email-masked]>           DATE 7) seven
+OBJID (<[email-masked]>    DATE 8) eight
+EOF
+test_expect_success 'Blame -e output' '
+	git blame -e one >actual &&
+	fuzz_blame actual >actual.fuzz &&
+	test_cmp expect actual.fuzz
+'
+
 test_done
-- 
1.7.9