Test the command-line interface of check-mailmap. (Actual .mailmap functionality is already covered by existing tests.) Signed-off-by: Eric Sunshine <sunshine@xxxxxxxxxxxxxx> --- t/t4203-mailmap.sh | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/t/t4203-mailmap.sh b/t/t4203-mailmap.sh index 842b754..8645492 100755 --- a/t/t4203-mailmap.sh +++ b/t/t4203-mailmap.sh @@ -13,6 +13,11 @@ fuzz_blame () { } test_expect_success setup ' + cat >contacts <<-\EOF && + A U Thor <author@xxxxxxxxxxx> + nick1 <bugs@xxxxxxxxxx> + EOF + echo one >one && git add one && test_tick && @@ -23,6 +28,51 @@ test_expect_success setup ' git commit --author "nick1 <bugs@xxxxxxxxxx>" -m second ' +test_expect_success 'check-mailmap no arguments' ' + test_must_fail git check-mailmap +' + +test_expect_success 'check-mailmap arguments' ' + cat >expect <<-\EOF && + A U Thor <author@xxxxxxxxxxx> + nick1 <bugs@xxxxxxxxxx> + EOF + git check-mailmap \ + "A U Thor <author@xxxxxxxxxxx>" \ + "nick1 <bugs@xxxxxxxxxx>" >actual && + test_cmp expect actual +' + +test_expect_success 'check-mailmap --stdin' ' + cat >expect <<-\EOF && + A U Thor <author@xxxxxxxxxxx> + nick1 <bugs@xxxxxxxxxx> + EOF + git check-mailmap --stdin <contacts >actual && + test_cmp expect actual +' + +test_expect_success 'check-mailmap --stdin arguments' ' + cat >expect <<-\EOF && + Internal Guy <bugs@xxxxxxxxxx> + EOF + cat <contacts >>expect && + git check-mailmap --stdin "Internal Guy <bugs@xxxxxxxxxx>" \ + <contacts >actual && + test_cmp expect actual +' + +test_expect_success 'check-mailmap -z' ' + printf "A U Thor <author@xxxxxxxxxxx>\0" >expect && + printf "nick1 <bugs@xxxxxxxxxx>\0" >>expect && + git check-mailmap -z --stdin <contacts >actual && + test_cmp expect actual +' + +test_expect_success 'check-mailmap bogus contact' ' + test_must_fail git check-mailmap bogus +' + cat >expect <<\EOF A U Thor (1): initial -- 1.8.3.2 -- 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