]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t/t3437: simplify and document the test helpers
authorCharvi Mendiratta <charvi077@gmail.com>
Wed, 10 Feb 2021 11:36:48 +0000 (17:06 +0530)
committerJunio C Hamano <gitster@pobox.com>
Wed, 10 Feb 2021 21:58:19 +0000 (13:58 -0800)
Let's simplify the test_commit_message() helper function and add
comments to the function.

This patch also document the working of 'fixup -C' with "amend!" in the
test-description.

Mentored-by: Christian Couder <chriscool@tuxfamily.org>
Mentored-by: Phillip Wood <phillip.wood@dunelm.org.uk>
Helped-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Charvi Mendiratta <charvi077@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t3437-rebase-fixup-options.sh

index 505211a589f24be0f947f9f7a4d9bc23b57f5d56..6b464989e9c767b9a6177b5eb37d2a5b5ea0def9 100755 (executable)
@@ -9,7 +9,9 @@ This test checks the "fixup [-C|-c]" command of rebase interactive.
 In addition to amending the contents of the commit, "fixup -C"
 replaces the original commit message with the message of the fixup
 commit. "fixup -c" also replaces the original message, but opens the
-editor to allow the user to edit the message before committing.
+editor to allow the user to edit the message before committing. Similar
+to the "fixup" command that works with "fixup!", "fixup -C" works with
+"amend!" upon --autosquash.
 '
 
 . ./test-lib.sh
@@ -18,17 +20,19 @@ editor to allow the user to edit the message before committing.
 
 EMPTY=""
 
+# test_commit_message <rev> -m <msg>
+# test_commit_message <rev> <path>
+# Verify that the commit message of <rev> matches
+# <msg> or the content of <path>.
 test_commit_message () {
-       rev="$1" && # commit or tag we want to test
-       file="$2" && # test against the content of a file
-       git show --no-patch --pretty=format:%B "$rev" >actual-message &&
-       if test "$2" = -m
-       then
-               str="$3" && # test against a string
-               printf "%s\n" "$str" >tmp-expected-message &&
-               file="tmp-expected-message"
-       fi
-       test_cmp "$file" actual-message
+       git show --no-patch --pretty=format:%B "$1" >actual &&
+       case "$2" in
+       -m)
+               echo "$3" >expect &&
+               test_cmp expect actual ;;
+       *)
+               test_cmp "$2" actual ;;
+       esac
 }
 
 get_author () {