Subject: [PATCH] test/send-email: --[no-]xmailer tests

From: Luis Henriques <[email-masked]>
Date: Thu, 4 Dec 2014 19:11:30 +0000

Add tests for the --[no-]xmailer option.

Signed-off-by: Luis Henriques <[email-masked]>
---
 t/t9001-send-email.sh | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh
index e37efef..7a3f996 100755
--- a/t/t9001-send-email.sh
+++ b/t/t9001-send-email.sh
@@ -1556,5 +1556,37 @@ test_expect_success $PREREQ 'sendemail.aliasfile=~/.mailrc' '
 		2>errors >out &&
 	grep "^!someone@example\.org!$" commandline1
 '
+do_xmailer_test() {
+	expected=$1
+	params=$2
+	git format-patch -1
+	git send-email \
+		--from="Example <[email-masked]>" \
+		--to=[email-masked] \
+		--smtp-server="$(pwd)/fake.sendmail" \
+		$params \
+		0001-*.patch \
+		2>errors >out
+	test "z$(grep ^X-Mailer: out | wc -l)" = "z$expected"
+	return $?
+}
+
+test_expect_success $PREREQ '--xmailer uses X-Mailer header' '
+	do_xmailer_test "1" "--xmailer"
+'
+
+test_expect_success $PREREQ '--no-xmailer supresses X-Mailer header' '
+	do_xmailer_test "0" "--no-xmailer"
+'
+
+test_expect_success $PREREQ 'sendemail.xmailer=true uses X-Mailer header' '
+	git config sendemail.xmailer true &&
+	do_xmailer_test "1" ""
+'
+
+test_expect_success $PREREQ 'sendemail.xmailer=false supresses X-Mailer header' '
+	git config sendemail.xmailer false &&
+	do_xmailer_test "0" ""
+'
 
 test_done