Browse Source
Unlike "$EDITOR" and "$GIT_EDITOR" that can hold the path to the command and initial options (e.g. "/path/to/emacs -nw"), 'git p4' did not let the shell interpolate the contents of the environment variable that name the editor "$P4EDITOR" (and "$EDITOR", too). Make it in line with the rest of Git, as well as with Perforce. * ld/p4-editor-multi-words: git-p4: tests: use test-chmtime in place of touch git-p4: fix handling of multi-word P4EDITOR git-p4: add failing test for P4EDITOR handlingmaint
Junio C Hamano
10 years ago
5 changed files with 47 additions and 7 deletions
@ -0,0 +1,38 @@
@@ -0,0 +1,38 @@
|
||||
#!/bin/sh |
||||
|
||||
test_description='git p4 handling of EDITOR' |
||||
|
||||
. ./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 "file1" |
||||
) |
||||
' |
||||
|
||||
# Check that the P4EDITOR argument can be given command-line |
||||
# options, which git-p4 will then pass through to the shell. |
||||
test_expect_success 'EDITOR with options' ' |
||||
git p4 clone --dest="$git" //depot && |
||||
test_when_finished cleanup_git && |
||||
( |
||||
cd "$git" && |
||||
echo change >file1 && |
||||
git commit -m "change" file1 && |
||||
P4EDITOR=": >\"$git/touched\" && test-chmtime +5" git p4 submit && |
||||
test_path_is_file "$git/touched" |
||||
) |
||||
' |
||||
|
||||
test_expect_success 'kill p4d' ' |
||||
kill_p4d |
||||
' |
||||
|
||||
test_done |
Loading…
Reference in new issue