summaryrefslogtreecommitdiff
path: root/t/t9001-send-email.sh
diff options
context:
space:
mode:
authorRafael Aquini <aquini@redhat.com>2020-06-29 14:11:04 (GMT)
committerJunio C Hamano <gitster@pobox.com>2020-07-01 23:12:21 (GMT)
commitf9f60d70663a89ff06fd38c806e47fc51f29ff72 (patch)
treef59bdbd0ad3a39b8f8dbb0be039a82b45619c951 /t/t9001-send-email.sh
parentaf6b65d45ef179ed52087e80cb089f6b2349f4ec (diff)
downloadgit-f9f60d70663a89ff06fd38c806e47fc51f29ff72.zip
git-f9f60d70663a89ff06fd38c806e47fc51f29ff72.tar.gz
git-f9f60d70663a89ff06fd38c806e47fc51f29ff72.tar.bz2
send-email: restore --in-reply-to superseding behavior
git send-email --in-reply-to= fails to override In-Reply-To email headers, if they're present in the output of format-patch, even when explicitly told to do so by the option --no-thread, which breaks the contract of the command line switch option, per its man page. " --in-reply-to=<identifier> Make the first mail (or all the mails with --no-thread) appear as a reply to the given Message-Id, which avoids breaking threads to provide a new patch series. " This patch fixes the aformentioned issue, by bringing --in-reply-to's old overriding behavior back. The test was donated by Carlo Marcelo Arenas Belón. Signed-off-by: Rafael Aquini <aquini@redhat.com> Helped-by: Carlo Marcelo Arenas Belón <carenas@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t9001-send-email.sh')
-rwxr-xr-xt/t9001-send-email.sh14
1 files changed, 13 insertions, 1 deletions
diff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh
index 90f61c3..ec26108 100755
--- a/t/t9001-send-email.sh
+++ b/t/t9001-send-email.sh
@@ -42,7 +42,8 @@ clean_fake_sendmail () {
}
test_expect_success $PREREQ 'Extract patches' '
- patches=$(git format-patch -s --cc="One <one@example.com>" --cc=two@example.com -n HEAD^1)
+ patches=$(git format-patch -s --cc="One <one@example.com>" --cc=two@example.com -n HEAD^1) &&
+ threaded_patches=$(git format-patch -o threaded -s --in-reply-to="format" HEAD^1)
'
# Test no confirm early to ensure remaining tests will not hang
@@ -1219,6 +1220,17 @@ test_expect_success $PREREQ 'threading but no chain-reply-to' '
grep "In-Reply-To: " stdout
'
+test_expect_success $PREREQ 'override in-reply-to if no threading' '
+ git send-email \
+ --dry-run \
+ --from="Example <nobody@example.com>" \
+ --to=nobody@example.com \
+ --no-thread \
+ --in-reply-to="override" \
+ $threaded_patches >stdout &&
+ grep "In-Reply-To: <override>" stdout
+'
+
test_expect_success $PREREQ 'sendemail.to works' '
git config --replace-all sendemail.to "Somebody <somebody@ex.com>" &&
git send-email \