diff options
author | Pete Wyckoff <pw@padd.com> | 2011-12-04 19:22:45 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-12-05 14:43:22 -0800 |
commit | 7c766e57e8214ee3cef6e215eaf8e2b3b56767e3 (patch) | |
tree | bf19c8aa793f28f3d248a0f445d6fea8c517c775 /t | |
parent | eb3b8d7658331f4ec5f115d7407393d845644f5e (diff) | |
download | git-7c766e57e8214ee3cef6e215eaf8e2b3b56767e3.tar.gz git-7c766e57e8214ee3cef6e215eaf8e2b3b56767e3.tar.xz |
git-p4: introduce skipSubmitEdit
Add a configuration variable to skip invoking the editor in the
submit path.
The existing variable skipSubmitEditCheck continues to make sure
that the submit template was indeed modified by the editor; but,
it is not considered if skipSubmitEdit is true.
Reported-by: Loren A. Linden Levy <lindenle@gmail.com>
Acked-by: Luke Diamand <luke@diamand.org>
Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't')
-rwxr-xr-x | t/t9805-skip-submit-edit.sh | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/t/t9805-skip-submit-edit.sh b/t/t9805-skip-submit-edit.sh new file mode 100755 index 000000000..734ccf2fb --- /dev/null +++ b/t/t9805-skip-submit-edit.sh @@ -0,0 +1,82 @@ +#!/bin/sh + +test_description='git-p4 skipSubmitEdit config variables' + +. ./lib-git-p4.sh + +test_expect_success 'start p4d' ' + start_p4d +' + +test_expect_success 'init depot' ' + ( + cd "$cli" && + echo file1 >file1 && + p4 add file1 && + p4 submit -d "change 1" + ) +' + +# this works because EDITOR is set to : +test_expect_success 'no config, unedited, say yes' ' + "$GITP4" clone --dest="$git" //depot && + test_when_finished cleanup_git && + ( + cd "$git" && + echo line >>file1 && + git commit -a -m "change 2" && + echo y | "$GITP4" submit && + p4 changes //depot/... >wc && + test_line_count = 2 wc + ) +' + +test_expect_success 'no config, unedited, say no' ' + "$GITP4" clone --dest="$git" //depot && + test_when_finished cleanup_git && + ( + cd "$git" && + echo line >>file1 && + git commit -a -m "change 3 (not really)" && + printf "bad response\nn\n" | "$GITP4" submit + p4 changes //depot/... >wc && + test_line_count = 2 wc + ) +' + +test_expect_success 'skipSubmitEdit' ' + "$GITP4" clone --dest="$git" //depot && + test_when_finished cleanup_git && + ( + cd "$git" && + git config git-p4.skipSubmitEdit true && + # will fail if editor is even invoked + git config core.editor /bin/false && + echo line >>file1 && + git commit -a -m "change 3" && + "$GITP4" submit && + p4 changes //depot/... >wc && + test_line_count = 3 wc + ) +' + +test_expect_success 'skipSubmitEditCheck' ' + "$GITP4" clone --dest="$git" //depot && + test_when_finished cleanup_git && + ( + cd "$git" && + git config git-p4.skipSubmitEditCheck true && + echo line >>file1 && + git commit -a -m "change 4" && + "$GITP4" submit && + p4 changes //depot/... >wc && + test_line_count = 4 wc + ) +' + + +test_expect_success 'kill p4d' ' + kill_p4d +' + +test_done |