# HG changeset patch # User Christian Brabandt # Date 1525528807 -7200 # Node ID 619730d0d864c86b09797a80d8d12027bcaf09ec # Parent 3dee8c59417f721ee4cf44511fc204accc7047cd patch 8.0.1793: no test for "vim -g" commit https://github.com/vim/vim/commit/248be5c5de723c4e2715c574fd920b8b1a1dfebb Author: Bram Moolenaar Date: Sat May 5 15:47:19 2018 +0200 patch 8.0.1793: no test for "vim -g" Problem: No test for "vim -g". Solution: Add a test for "-g" and "-y". diff --git a/src/testdir/shared.vim b/src/testdir/shared.vim --- a/src/testdir/shared.vim +++ b/src/testdir/shared.vim @@ -227,6 +227,8 @@ func GetVimProg() return readfile('vimcmd')[0] endfunc +let g:valgrind_cnt = 1 + " Get the command to run Vim, with -u NONE and --not-a-term arguments. " If there is an argument use it instead of "NONE". func GetVimCommand(...) @@ -244,14 +246,26 @@ func GetVimCommand(...) " For Unix Makefile writes the command to use in the second line of the " "vimcmd" file, including environment options. " Other Makefiles just write the executable in the first line, so fall back - " to that if there is no second line. - let cmd = get(lines, 1, lines[0]) + " to that if there is no second line or it is empty. + if len(lines) > 1 && lines[1] != '' + let cmd = lines[1] + else + let cmd = lines[0] + endif + let cmd = substitute(cmd, '-u \f\+', '-u ' . name, '') if cmd !~ '-u '. name let cmd = cmd . ' -u ' . name endif let cmd .= ' --not-a-term' let cmd = substitute(cmd, 'VIMRUNTIME=.*VIMRUNTIME;', '', '') + + " If using valgrind, make sure every run uses a different log file. + if cmd =~ 'valgrind.*--log-file=' + let cmd = substitute(cmd, '--log-file=\(^\s*\)', '--log-file=\1.' . g:valgrind_cnt, '') + let g:valgrind_cnt += 1 + endif + return cmd endfunc @@ -274,9 +288,6 @@ endfunc func RunVimPiped(before, after, arguments, pipecmd) let cmd = GetVimCommand() - if cmd == '' - return 0 - endif let args = '' if len(a:before) > 0 call writefile(a:before, 'Xbefore.vim') diff --git a/src/testdir/test_gui.vim b/src/testdir/test_gui.vim --- a/src/testdir/test_gui.vim +++ b/src/testdir/test_gui.vim @@ -706,3 +706,33 @@ func Test_windowid_variable() call assert_equal(0, v:windowid) endif endfunc + +" Test "vim -g" and also the GUIEnter autocommand. +func Test_gui_dash_g() + let cmd = GetVimCommand('Xscriptgui') + call writefile([""], "Xtestgui") + call writefile([ + \ 'au GUIEnter * call writefile(["insertmode: " . &insertmode], "Xtestgui")', + \ 'au GUIEnter * qall', + \ ], 'Xscriptgui') + call system(cmd . ' -g') + call WaitForAssert({-> assert_equal(['insertmode: 0'], readfile('Xtestgui'))}) + + call delete('Xscriptgui') + call delete('Xtestgui') +endfunc + +" Test "vim -7" and also the GUIEnter autocommand. +func Test_gui_dash_y() + let cmd = GetVimCommand('Xscriptgui') + call writefile([""], "Xtestgui") + call writefile([ + \ 'au GUIEnter * call writefile(["insertmode: " . &insertmode], "Xtestgui")', + \ 'au GUIEnter * qall', + \ ], 'Xscriptgui') + call system(cmd . ' -y') + call WaitForAssert({-> assert_equal(['insertmode: 1'], readfile('Xtestgui'))}) + + call delete('Xscriptgui') + call delete('Xtestgui') +endfunc diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -762,6 +762,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1793, +/**/ 1792, /**/ 1791,