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

[PATCH 3/7] t6200: test fmt-merge-msg more

From
Stephen Boyd <bebarino@gmail.com>
Date
Mar 24, 2010, 07:16 UTC
Message-ID
<1269414964-9518-4-git-send-email-bebarino@gmail.com>
In-Reply-To
<1269414964-9518-1-git-send-email-bebarino@gmail.com>

Add some more tests so we don't break behavior upon modernizing fmt-merge-msg.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
---
 t/t6200-fmt-merge-msg.sh |  115 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 115 insertions(+), 0 deletions(-)
diff --git a/t/t6200-fmt-merge-msg.sh b/t/t6200-fmt-merge-msg.sh
index b24c5bf..42f8ece 100755
--- a/t/t6200-fmt-merge-msg.sh
+++ b/t/t6200-fmt-merge-msg.sh
@@ -62,6 +62,14 @@ test_expect_success setup '
 	test_tick &&
 	git commit -a -m "Right #5" &&
 
+	git checkout -b long &&
+	i=0 &&
+	while test $i -lt 30
+	do
+		test_commit $i one &&
+		i=$(($i+1))
+	done &&
+
 	git show-branch
 '
 
@@ -253,4 +261,111 @@ test_expect_success 'merge-msg with nothing to merge' '
 	test_cmp /dev/null actual
 '
 
+cat >expected <<\EOF
+Merge tag 'tag-r3'
+
+* tag 'tag-r3':
+  Right #3
+  Common #2
+  Common #1
+EOF
+
+test_expect_success 'merge-msg tag' '
+
+	git config --unset-all merge.log
+	git config --unset-all merge.summary
+	git config merge.summary yes &&
+
+	git checkout master &&
+	test_tick &&
+	git fetch . tag tag-r3 &&
+
+	git fmt-merge-msg <.git/FETCH_HEAD >actual &&
+	test_cmp expected actual
+'
+
+cat >expected <<\EOF
+Merge tags 'tag-r3' and 'tag-l5'
+
+* tag 'tag-r3':
+  Right #3
+  Common #2
+  Common #1
+
+* tag 'tag-l5':
+  Left #5
+  Left #4
+  Left #3
+  Common #2
+  Common #1
+EOF
+
+test_expect_success 'merge-msg two tags' '
+
+	git config --unset-all merge.log
+	git config --unset-all merge.summary
+	git config merge.summary yes &&
+
+	git checkout master &&
+	test_tick &&
+	git fetch . tag tag-r3 tag tag-l5 &&
+
+	git fmt-merge-msg <.git/FETCH_HEAD >actual &&
+	test_cmp expected actual
+'
+
+cat >expected <<\EOF
+Merge branch 'left', tag 'tag-r3'
+
+* tag 'tag-r3':
+  Right #3
+  Common #2
+  Common #1
+
+* left:
+  Left #5
+  Left #4
+  Left #3
+  Common #2
+  Common #1
+EOF
+
+test_expect_success 'merge-msg tag and branch' '
+
+	git config --unset-all merge.log
+	git config --unset-all merge.summary
+	git config merge.summary yes &&
+
+	git checkout master &&
+	test_tick &&
+	git fetch . tag tag-r3 left &&
+
+	git fmt-merge-msg <.git/FETCH_HEAD >actual &&
+	test_cmp expected actual
+'
+
+cat >expected <<\EOF
+Merge branch 'long'
+
+* long: (35 commits)
+EOF
+
+test_expect_success 'merge-msg lots of commits' '
+
+	git checkout master &&
+	test_tick &&
+	git fetch . long &&
+
+	i=29 &&
+	while test $i -gt 9
+	do
+		echo "  $i" &&
+		i=$(($i-1))
+	done >>expected &&
+	echo "  ..." >>expected
+
+	git fmt-merge-msg <.git/FETCH_HEAD >actual &&
+	test_cmp expected actual
+'
+
 test_done
-- 
1.7.0.3.254.g4503b
Previous: Stephen BoydNext: Stephen Boyd
Message 6 of 17 in “fmt-merge-msg improvements”
  1. 0/7 fmt-merge-msg improvementsStephen Boyd, Mar 24, 2010
  2. 1/7 fmt-merge-msg: be quiet if nothing to mergeStephen Boyd, Mar 24, 2010
  3. Junio C HamanoMar 25, 2010
  4. Stephen BoydMar 25, 2010
  5. 2/7 t6200: modernize with test_tickStephen Boyd, Mar 24, 2010
  6. 3/7 t6200: test fmt-merge-msg moreStephen Boyd, Mar 24, 2010
  7. 4/7 fmt-merge-msg: use pretty.c routinesStephen Boyd, Mar 24, 2010
  8. 5/7 string-list: add unsorted_string_list_lookup()Stephen Boyd, Mar 24, 2010
  9. 6/7 fmt-merge-msg: remove custom string_list implementationStephen Boyd, Mar 24, 2010
  10. Junio C HamanoMar 30, 2010
  11. Stephen BoydApr 1, 2010
  12. 8/7 Make string_list_append() consistent with everything elseStephen Boyd, Apr 1, 2010
  13. Julian PhillipsApr 1, 2010
  14. 7/7 fmt-merge-msg: hide summary optionStephen Boyd, Mar 24, 2010
  15. Junio C HamanoMar 25, 2010
  16. Stephen BoydMar 25, 2010
  17. Junio C HamanoMar 26, 2010

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.