@@ -419,6 +419,94 @@ test_expect_success 'preserve canonical email case' '
419
419
test_cmp expect actual
420
420
'
421
421
422
+ test_expect_success ' gitmailmap(5) example output: setup' '
423
+ test_create_repo doc &&
424
+ test_commit -C doc --author "Joe Developer <[email protected] >" A &&
425
+ test_commit -C doc --author "Joe R. Developer <[email protected] >" B &&
426
+ test_commit -C doc --author "Jane Doe <[email protected] >" C &&
427
+ test_commit -C doc --author "Jane Doe <jane@laptop.(none)>" D &&
428
+ test_commit -C doc --author "Jane D. <jane@desktop.(none)>" E
429
+ '
430
+
431
+ test_expect_success ' gitmailmap(5) example output: example #1' '
432
+ test_config -C doc mailmap.file ../doc.map &&
433
+ cat >doc.map <<-\EOF &&
434
+ Joe R. Developer <[email protected] >
435
+
436
+ Jane Doe <jane@desktop.(none)>
437
+ EOF
438
+
439
+ cat >expect <<-\EOF &&
440
+ Author Joe Developer <[email protected] > maps to Joe R. Developer <[email protected] >
441
+ Committer C O Mitter <[email protected] > maps to C O Mitter <[email protected] >
442
+
443
+ Author Joe R. Developer <[email protected] > maps to Joe R. Developer <[email protected] >
444
+ Committer C O Mitter <[email protected] > maps to C O Mitter <[email protected] >
445
+
446
+ Author Jane Doe <[email protected] > maps to Jane Doe <[email protected] >
447
+ Committer C O Mitter <[email protected] > maps to C O Mitter <[email protected] >
448
+
449
+ Author Jane Doe <jane@laptop.(none)> maps to Jane Doe <jane@laptop.(none)>
450
+ Committer C O Mitter <[email protected] > maps to C O Mitter <[email protected] >
451
+
452
+ Author Jane D <jane@desktop.(none)> maps to Jane Doe <jane@desktop.(none)>
453
+ Committer C O Mitter <[email protected] > maps to C O Mitter <[email protected] >
454
+ EOF
455
+ git -C doc log --reverse --pretty=format:"Author %an <%ae> maps to %aN <%aE>%nCommitter %cn <%ce> maps to %cN <%cE>%n" >actual &&
456
+ test_cmp expect actual
457
+ '
458
+
459
+ test_expect_success ' gitmailmap(5) example output: example #2' '
460
+ test_config -C doc mailmap.file ../doc.map &&
461
+ cat >doc.map <<-\EOF &&
462
+ Joe R. Developer <[email protected] >
463
+ Jane Doe <[email protected] > <jane@laptop.(none)>
464
+ Jane Doe <[email protected] > <jane@desktop.(none)>
465
+ EOF
466
+
467
+ cat >expect <<-\EOF &&
468
+ Author Joe Developer <[email protected] > maps to Joe R. Developer <[email protected] >
469
+ Committer C O Mitter <[email protected] > maps to C O Mitter <[email protected] >
470
+
471
+ Author Joe R. Developer <[email protected] > maps to Joe R. Developer <[email protected] >
472
+ Committer C O Mitter <[email protected] > maps to C O Mitter <[email protected] >
473
+
474
+ Author Jane Doe <[email protected] > maps to Jane Doe <[email protected] >
475
+ Committer C O Mitter <[email protected] > maps to C O Mitter <[email protected] >
476
+
477
+ Author Jane Doe <jane@laptop.(none)> maps to Jane Doe <[email protected] >
478
+ Committer C O Mitter <[email protected] > maps to C O Mitter <[email protected] >
479
+
480
+ Author Jane D <jane@desktop.(none)> maps to Jane Doe <[email protected] >
481
+ Committer C O Mitter <[email protected] > maps to C O Mitter <[email protected] >
482
+ EOF
483
+ git -C doc log --reverse --pretty=format:"Author %an <%ae> maps to %aN <%aE>%nCommitter %cn <%ce> maps to %cN <%cE>%n" >actual &&
484
+ test_cmp expect actual
485
+ '
486
+
487
+ test_expect_success ' gitmailmap(5) example output: example #3' '
488
+ test_config -C doc mailmap.file ../doc.map &&
489
+ cat >>doc.map <<-\EOF &&
490
+
491
+
492
+ EOF
493
+
494
+ test_commit -C doc --author "Joe <[email protected] >" F &&
495
+ test_commit -C doc --author "Jane <[email protected] >" G &&
496
+
497
+ cat >>expect <<-\EOF &&
498
+
499
+ Author Joe <[email protected] > maps to Joe R. Developer <[email protected] >
500
+ Committer C O Mitter <[email protected] > maps to C O Mitter <[email protected] >
501
+
502
+ Author Jane <[email protected] > maps to Jane Doe <[email protected] >
503
+ Committer C O Mitter <[email protected] > maps to C O Mitter <[email protected] >
504
+ EOF
505
+ git -C doc log --reverse --pretty=format:"Author %an <%ae> maps to %aN <%aE>%nCommitter %cn <%ce> maps to %cN <%cE>%n" >actual &&
506
+ test_cmp expect actual
507
+ '
508
+
509
+
422
510
test_expect_success ' Shortlog output (complex mapping)' '
423
511
test_config mailmap.file complex.map &&
424
512
cat >complex.map <<-EOF &&
0 commit comments