git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/3] t3436: check --committer-date-is-author-date result more carefully

From
Jeff King <peff@peff.net>
Date
Oct 23, 2020, 07:08 UTC
Message-ID
<20201023070843.GA2913115@coredump.intra.peff.net>
In-Reply-To
<20201023070747.GA2198273@coredump.intra.peff.net>

After running "rebase --committer-date-is-author-date", we confirm that the committer date is the same as the author date. However, we don't look at any other parts of the committer ident line to make sure we didn't screw them up. And indeed, there are a few bugs here. Depending on the rebase backend in use, we may accidentally use the author email instead of the committer's, or even an empty string.

Let's teach our test_ctime_is_atime helper to check the committer name and email, which reveals several failing tests.

Signed-off-by: Jeff King <peff@peff.net>
---
 t/t3436-rebase-more-options.sh | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/t/t3436-rebase-more-options.sh b/t/t3436-rebase-more-options.sh
index 996e82787e..6f2f49717b 100755
--- a/t/t3436-rebase-more-options.sh
+++ b/t/t3436-rebase-more-options.sh
@@ -65,31 +65,31 @@ test_expect_success '--ignore-whitespace is remembered when continuing' '
 '
 
 test_ctime_is_atime () {
-	git log $1 --format=%ai >authortime &&
-	git log $1 --format=%ci >committertime &&
+	git log $1 --format="$GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> %ai" >authortime &&
+	git log $1 --format="%cn <%ce> %ci" >committertime &&
 	test_cmp authortime committertime
 }
 
-test_expect_success '--committer-date-is-author-date works with apply backend' '
+test_expect_failure '--committer-date-is-author-date works with apply backend' '
 	GIT_AUTHOR_DATE="@1234 +0300" git commit --amend --reset-author &&
 	git rebase --apply --committer-date-is-author-date HEAD^ &&
 	test_ctime_is_atime -1
 '
 
-test_expect_success '--committer-date-is-author-date works with merge backend' '
+test_expect_failure '--committer-date-is-author-date works with merge backend' '
 	GIT_AUTHOR_DATE="@1234 +0300" git commit --amend --reset-author &&
 	git rebase -m --committer-date-is-author-date HEAD^ &&
 	test_ctime_is_atime -1
 '
 
-test_expect_success '--committer-date-is-author-date works with rebase -r' '
+test_expect_failure '--committer-date-is-author-date works with rebase -r' '
 	git checkout side &&
 	GIT_AUTHOR_DATE="@1234 +0300" git merge --no-ff commit3 &&
 	git rebase -r --root --committer-date-is-author-date &&
 	test_ctime_is_atime
 '
 
-test_expect_success '--committer-date-is-author-date works when forking merge' '
+test_expect_failure '--committer-date-is-author-date works when forking merge' '
 	git checkout side &&
 	GIT_AUTHOR_DATE="@1234 +0300" git merge --no-ff commit3 &&
 	PATH="./test-bin:$PATH" git rebase -r --root --strategy=test \
@@ -145,7 +145,7 @@ test_expect_success '--reset-author-date works with rebase -r' '
 	test_atime_is_ignored
 '
 
-test_expect_success '--reset-author-date with --committer-date-is-author-date works' '
+test_expect_failure '--reset-author-date with --committer-date-is-author-date works' '
 	test_must_fail git rebase -m --committer-date-is-author-date \
 		--reset-author-date --onto commit2^^ commit2^ commit3 &&
 	git checkout --theirs foo &&
-- 
2.29.0.583.g8e3ac41d8f
Previous: Jeff KingNext: Phillip Wood
Message 3 of 17 in “committer-date-is-author-date flag removes email in "Commit"”
  1. VenomVendorOct 23, 2020
  2. Jeff KingOct 23, 2020
  3. 1/3 t3436: check --committer-date-is-author-date result more carefullyJeff King, Oct 23, 2020
  4. Phillip WoodOct 23, 2020
  5. 2/3 am: fix broken email with --committer-date-is-author-dateJeff King, Oct 23, 2020
  6. 4/3 am, sequencer: stop parsing our own committer identJeff King, Oct 23, 2020
  7. Jeff KingOct 23, 2020
  8. Taylor BlauOct 23, 2020
  9. Johannes SchindelinOct 26, 2020
  10. Jeff KingOct 27, 2020
  11. Phillip WoodOct 23, 2020
  12. Junio C HamanoOct 26, 2020
  13. Jeff KingOct 27, 2020
  14. 3/3 rebase: fix broken email with --committer-date-is-author-dateJeff King, Oct 23, 2020
  15. Junio C HamanoOct 23, 2020
  16. Phillip WoodOct 23, 2020
  17. Junio C HamanoOct 23, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.