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

[PATCH v6 10/11] trailer: add tests for commands in config file

From
Christian Couder <chriscool@tuxfamily.org>
Date
Mar 4, 2014, 19:48 UTC
Message-ID
<20140304194810.14249.23504.chriscool@tuxfamily.org>
In-Reply-To
<20140304193250.14249.56949.chriscool@tuxfamily.org>
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
---
 t/t7513-interpret-trailers.sh | 47 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)
diff --git a/t/t7513-interpret-trailers.sh b/t/t7513-interpret-trailers.sh
index 3223b12..0badd0e 100755
--- a/t/t7513-interpret-trailers.sh
+++ b/t/t7513-interpret-trailers.sh
@@ -211,4 +211,51 @@ test_expect_success 'using "ifMissing = doNothing"' '
 	test_cmp expected actual
 '
 
+test_expect_success 'with simple command' '
+	git config trailer.sign.key "Signed-off-by: " &&
+	git config trailer.sign.where "after" &&
+	git config trailer.sign.ifExists "addIfDifferentNeighbor" &&
+	git config trailer.sign.command "echo \"A U Thor <author@example.com>\"" &&
+	cat complex_message_body >expected &&
+	printf "Fixes: \nAcked-by= \nReviewed-by: \nSigned-off-by: \nSigned-off-by: A U Thor <author@example.com>\n" >>expected &&
+	git interpret-trailers "review:" "fix=22" <complex_message >actual &&
+	test_cmp expected actual
+'
+
+test_expect_success 'with command using commiter information' '
+	git config trailer.sign.ifExists "addIfDifferent" &&
+	git config trailer.sign.command "echo \"\$GIT_COMMITTER_NAME <\$GIT_COMMITTER_EMAIL>\"" &&
+	cat complex_message_body >expected &&
+	printf "Fixes: \nAcked-by= \nReviewed-by: \nSigned-off-by: \nSigned-off-by: C O Mitter <committer@example.com>\n" >>expected &&
+	git interpret-trailers "review:" "fix=22" <complex_message >actual &&
+	test_cmp expected actual
+'
+
+test_expect_success 'with command using author information' '
+	git config trailer.sign.key "Signed-off-by: " &&
+	git config trailer.sign.where "after" &&
+	git config trailer.sign.ifExists "addIfDifferentNeighbor" &&
+	git config trailer.sign.command "echo \"\$GIT_AUTHOR_NAME <\$GIT_AUTHOR_EMAIL>\"" &&
+	cat complex_message_body >expected &&
+	printf "Fixes: \nAcked-by= \nReviewed-by: \nSigned-off-by: \nSigned-off-by: A U Thor <author@example.com>\n" >>expected &&
+	git interpret-trailers "review:" "fix=22" <complex_message >actual &&
+	test_cmp expected actual
+'
+
+test_expect_success 'setup a commit' '
+	echo "Content of the first commit." > a.txt &&
+	git add a.txt &&
+	git commit -m "Add file a.txt"
+'
+
+test_expect_success 'with command using $ARG' '
+	git config trailer.fix.ifExists "overwrite" &&
+	git config trailer.fix.command "git log -1 --oneline --format=\"%h (%s)\" --abbrev-commit --abbrev=14 \$ARG" &&
+	FIXED=$(git log -1 --oneline --format="%h (%s)" --abbrev-commit --abbrev=14 HEAD) &&
+	cat complex_message_body >expected &&
+	printf "Fixes: $FIXED\nAcked-by= \nReviewed-by: \nSigned-off-by: \nSigned-off-by: A U Thor <author@example.com>\n" >>expected &&
+	git interpret-trailers "review:" "fix=HEAD" <complex_message >actual &&
+	test_cmp expected actual
+'
+
 test_done
-- 
1.8.5.2.204.gcfe299d.dirty
Previous: Junio C HamanoNext: Christian Couder
Message 19 of 21 in “Add interpret-trailers builtin”
  1. 00/11 Add interpret-trailers builtinChristian Couder, Mar 4, 2014
  2. 01/11 Add data structures and basic functions for commit trailersChristian Couder, Mar 4, 2014
  3. 02/11 trailer: process trailers from stdin and argumentsChristian Couder, Mar 4, 2014
  4. Junio C HamanoMar 5, 2014
  5. Christian CouderMar 7, 2014
  6. Dan CarpenterMar 7, 2014
  7. Christian CouderMar 7, 2014
  8. 03/11 trailer: read and process config informationChristian Couder, Mar 4, 2014
  9. 04/11 trailer: process command line trailer argumentsChristian Couder, Mar 4, 2014
  10. Junio C HamanoMar 5, 2014
  11. 05/11 trailer: parse trailers from stdinChristian Couder, Mar 4, 2014
  12. Junio C HamanoMar 5, 2014
  13. 06/11 trailer: put all the processing together and printChristian Couder, Mar 4, 2014
  14. 07/11 trailer: add interpret-trailers commandChristian Couder, Mar 4, 2014
  15. 08/11 trailer: add tests for "git interpret-trailers"Christian Couder, Mar 4, 2014
  16. Junio C HamanoMar 5, 2014
  17. 09/11 trailer: execute command from 'trailer.<name>.command'Christian Couder, Mar 4, 2014
  18. Junio C HamanoMar 5, 2014
  19. 10/11 trailer: add tests for commands in config fileChristian Couder, Mar 4, 2014
  20. 11/11 Documentation: add documentation for 'git interpret-trailers'Christian Couder, Mar 4, 2014
  21. Ramsay JonesMar 6, 2014

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.