]> granicus.if.org Git - vim/commitdiff
patch 8.0.1179: Test_popup_and_window_resize() does not always pass v8.0.1179
authorBram Moolenaar <Bram@vim.org>
Sat, 7 Oct 2017 18:03:23 +0000 (20:03 +0200)
committerBram Moolenaar <Bram@vim.org>
Sat, 7 Oct 2017 18:03:23 +0000 (20:03 +0200)
Problem:    Test_popup_and_window_resize() does not always pass.
Solution:   Do not use $VIMPROG, pass the Vim executable in the vimcmd file.
            (Ozaki Kiichi, closes #2186)

.gitignore
src/testdir/Makefile
src/testdir/shared.vim
src/testdir/test_popup.vim
src/version.c

index 07adcb61a4623c5a14537e3acce55b386ac5cf89..f31e233bb747fda3f32e5ae76ff154e76fe7418a 100644 (file)
@@ -38,6 +38,7 @@ src/pathdef.c
 src/Obj*/pathdef.c
 gvimext.dll
 gvimext.lib
+gvim.lib
 runtime/doc/uganda.nsis.txt
 
 # Borland C++
index ce1c24cd68251ead35c6ab778d6e3b7fdbff013d..3a69c6c1ac000ce7ad941533e0df6b13efc541bf 100644 (file)
@@ -126,18 +126,21 @@ newtests: newtestssilent
 newtestssilent: $(NEW_TESTS)
 
 
-.vim.res:
-       @echo "$(RUN_VIMTEST)" > vimcmd
+.vim.res: writevimcmd
+       @echo "$(VIMPROG)" > vimcmd
+       @echo "$(RUN_VIMTEST)" >> vimcmd
        $(RUN_VIMTEST) $(NO_INITS) -S runtest.vim $*.vim
        @rm vimcmd
 
 test_gui.res: test_gui.vim
-       @echo "$(RUN_GVIMTEST)" > vimcmd
+       @echo "$(VIMPROG)" > vimcmd
+       @echo "$(RUN_GVIMTEST)" >> vimcmd
        $(RUN_VIMTEST) -u NONE $(NO_INITS) -S runtest.vim $<
        @rm vimcmd
 
 test_gui_init.res: test_gui_init.vim
-       @echo "$(RUN_GVIMTEST_WITH_GVIMRC)" > vimcmd
+       @echo "$(VIMPROG)" > vimcmd
+       @echo "$(RUN_GVIMTEST_WITH_GVIMRC)" >> vimcmd
        $(RUN_VIMTEST) -u gui_preinit.vim -U gui_init.vim $(NO_PLUGINS) -S runtest.vim $<
        @rm vimcmd
 
index be83732cd2722da76b2a786ba8f8b51a9621fc7b..8db388a4faf141a4aa0290c97bfcf4698d01aa02 100644 (file)
@@ -170,6 +170,15 @@ func s:feedkeys(timer)
   call feedkeys('x', 'nt')
 endfunc
 
+" Get $VIMPROG to run Vim executable.
+" The Makefile writes it as the first line in the "vimcmd" file.
+func GetVimProg()
+  if !filereadable('vimcmd')
+    return ''
+  endif
+  return readfile('vimcmd')[0]
+endfunc
+
 " Get the command to run Vim, with -u NONE and --not-a-term arguments.
 " If there is an argument use it instead of "NONE".
 " Returns an empty string on error.
@@ -182,7 +191,12 @@ func GetVimCommand(...)
   else
     let name = a:1
   endif
-  let cmd = readfile('vimcmd')[0]
+  " 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 lines = readfile('vimcmd')
+  let cmd = get(lines, 1, lines[0])
   let cmd = substitute(cmd, '-u \f\+', '-u ' . name, '')
   if cmd !~ '-u '. name
     let cmd = cmd . ' -u ' . name
index fdd51de51cb60f53952fceb9b57001f152cdbedb..917395bc9b2098845ed4966a0b9e89bb43412ebb 100644 (file)
@@ -643,10 +643,10 @@ func Test_popup_and_window_resize()
   if h < 15
     return
   endif
-  let g:buf = term_start([$VIMPROG, '--clean', '-c', 'set noswapfile'], {'term_rows': h / 3})
-  call term_sendkeys(g:buf, (h / 3 - 1)."o\<esc>G")
-  call term_sendkeys(g:buf, "i\<c-x>")
+  let g:buf = term_start([GetVimProg(), '--clean', '-c', 'set noswapfile'], {'term_rows': h / 3})
+  call term_sendkeys(g:buf, (h / 3 - 1)."o\<esc>")
   call term_wait(g:buf, 200)
+  call term_sendkeys(g:buf, "Gi\<c-x>")
   call term_sendkeys(g:buf, "\<c-v>")
   call term_wait(g:buf, 100)
   " popup first entry "!" must be at the top
index 95b4b308389588108bade1fd1e46a9922d4903a9..b021a25876512031f87033770a1315010ecdbf53 100644 (file)
@@ -761,6 +761,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1179,
 /**/
     1178,
 /**/