Patch 8.1.2373

8 views
Skip to first unread message

Bram Moolenaar

unread,
Dec 1, 2019, 9:23:56 AM12/1/19
to vim...@googlegroups.com

Patch 8.1.2373
Problem: Cannot build with +popupwin but without +quickfix. (John Marriott)
Solution: Adjust #ifdefs.
Files: src/ex_cmds.c, src/popupmenu.c, src/popupwin.c, src/fileio.c,
src/testdir/test_compiler.vim, src/testdir/test_tagjump.vim,
src/testdir/test86.in, src/testdir/test87.in,
src/testdir/test_autocmd.vim, src/testdir/test_bufwintabinfo.vim,
src/testdir/test_channel.vim, src/testdir/test_edit.vim,
src/testdir/test_execute_func.vim,
src/testdir/test_filter_cmd.vim, src/testdir/test_gui.vim,
src/testdir/test_makeencoding.vim, src/testdir/test_mksession.vim,
src/testdir/test_normal.vim, src/testdir/test_popup.vim,
src/testdir/test_popupwin.vim, src/testdir/test_preview.vim,
src/testdir/test_startup.vim, src/testdir/test_statusline.vim,
src/testdir/test_tabpage.vim, src/testdir/test_window_cmd.vim,
src/testdir/test_window_id.vim


*** ../vim-8.1.2372/src/ex_cmds.c 2019-11-30 22:47:42.643331239 +0100
--- src/ex_cmds.c 2019-12-01 13:53:41.078885724 +0100
***************
*** 3016,3022 ****
#ifdef FEAT_TITLE
maketitle();
#endif
! #ifdef FEAT_PROP_POPUP
if (WIN_IS_POPUP(curwin) && curwin->w_p_pvw && retval != FAIL)
popup_set_title(curwin);
#endif
--- 3016,3022 ----
#ifdef FEAT_TITLE
maketitle();
#endif
! #if defined(FEAT_PROP_POPUP) && defined(FEAT_QUICKFIX)
if (WIN_IS_POPUP(curwin) && curwin->w_p_pvw && retval != FAIL)
popup_set_title(curwin);
#endif
*** ../vim-8.1.2372/src/popupmenu.c 2019-11-30 22:47:42.655331183 +0100
--- src/popupmenu.c 2019-12-01 13:59:36.745712007 +0100
***************
*** 621,627 ****
#endif
}

! #if defined(FEAT_PROP_POPUP) && defined(FEAT_QUICKFIX)
/*
* Position the info popup relative to the popup menu item.
*/
--- 621,627 ----
#endif
}

! #if (defined(FEAT_PROP_POPUP) && defined(FEAT_QUICKFIX)) || defined(PROTO)
/*
* Position the info popup relative to the popup menu item.
*/
***************
*** 683,689 ****
#ifdef FEAT_QUICKFIX
int prev_selected = pum_selected;
#endif
! #ifdef FEAT_PROP_POPUP
int has_info = FALSE;
#endif

--- 683,689 ----
#ifdef FEAT_QUICKFIX
int prev_selected = pum_selected;
#endif
! #if defined(FEAT_PROP_POPUP) && defined(FEAT_QUICKFIX)
int has_info = FALSE;
#endif

*** ../vim-8.1.2372/src/popupwin.c 2019-11-30 22:47:42.655331183 +0100
--- src/popupwin.c 2019-12-01 14:00:58.681395635 +0100
***************
*** 2386,2393 ****
--- 2386,2395 ----
if (wp != NULL)
{
popup_show(wp);
+ #ifdef FEAT_QUICKFIX
if (wp->w_popup_flags & POPF_INFO)
pum_position_info_popup(wp);
+ #endif
}
}

***************
*** 3686,3691 ****
--- 3688,3700 ----
return abort;
}

+ int
+ popup_is_popup(win_T *wp)
+ {
+ return wp->w_popup_flags != 0;
+ }
+
+ #if defined(FEAT_QUICKFIX) || defined(PROTO)
/*
* Find an existing popup used as the preview window, in the current tab page.
* Return NULL if not found.
***************
*** 3702,3714 ****
return NULL;
}

- int
- popup_is_popup(win_T *wp)
- {
- return wp->w_popup_flags != 0;
- }
-
- #if defined(FEAT_QUICKFIX) || defined(PROTO)
/*
* Find an existing popup used as the info window, in the current tab page.
* Return NULL if not found.
--- 3711,3716 ----
***************
*** 3729,3747 ****
--- 3731,3758 ----
void
f_popup_findinfo(typval_T *argvars UNUSED, typval_T *rettv)
{
+ #ifdef FEAT_QUICKFIX
win_T *wp = popup_find_info_window();

rettv->vval.v_number = wp == NULL ? 0 : wp->w_id;
+ #else
+ rettv->vval.v_number = 0;
+ #endif
}

void
f_popup_findpreview(typval_T *argvars UNUSED, typval_T *rettv)
{
+ #ifdef FEAT_QUICKFIX
win_T *wp = popup_find_preview_window();

rettv->vval.v_number = wp == NULL ? 0 : wp->w_id;
+ #else
+ rettv->vval.v_number = 0;
+ #endif
}

+ #if defined(FEAT_QUICKFIX) || defined(PROTO)
/*
* Create a popup to be used as the preview or info window.
* NOTE: this makes the popup the current window, so that the file can be
***************
*** 3775,3781 ****
return OK;
}

- #if defined(FEAT_QUICKFIX) || defined(PROTO)
/*
* Close any preview popup.
*/
--- 3786,3791 ----
***************
*** 3851,3856 ****
--- 3861,3867 ----
}
}

+ # if defined(FEAT_QUICKFIX) || defined(PROTO)
/*
* If there is a preview window, update the title.
* Used after changing directory.
***************
*** 3863,3867 ****
--- 3874,3879 ----
if (wp != NULL)
popup_set_title(wp);
}
+ # endif

#endif // FEAT_PROP_POPUP
*** ../vim-8.1.2372/src/fileio.c 2019-11-30 22:47:42.647331219 +0100
--- src/fileio.c 2019-12-01 13:57:46.482115011 +0100
***************
*** 3366,3372 ****
}
status_redraw_all();
redraw_tabline = TRUE;
! #ifdef FEAT_PROP_POPUP
popup_update_preview_title();
#endif
}
--- 3366,3372 ----
}
status_redraw_all();
redraw_tabline = TRUE;
! #if defined(FEAT_PROP_POPUP) && defined(FEAT_QUICKFIX)
popup_update_preview_title();
#endif
}
*** ../vim-8.1.2372/src/testdir/test_compiler.vim 2019-10-10 14:08:23.433080875 +0200
--- src/testdir/test_compiler.vim 2019-12-01 14:32:29.177735039 +0100
***************
*** 1,9 ****
--- 1,12 ----
" Test the :compiler command

+ source check.vim
+
func Test_compiler()
if !executable('perl')
return
endif
+ CheckFeature quickfix

" $LANG changes the output of Perl.
if $LANG != ''
*** ../vim-8.1.2372/src/testdir/test_tagjump.vim 2019-11-17 16:18:26.921689984 +0100
--- src/testdir/test_tagjump.vim 2019-12-01 14:33:37.937501505 +0100
***************
*** 5,16 ****
--- 5,20 ----

" SEGV occurs in older versions. (At least 7.4.1748 or older)
func Test_ptag_with_notagstack()
+ CheckFeature quickfix
+
set notagstack
call assert_fails('ptag does_not_exist_tag_name', 'E426')
set tagstack&vim
endfunc

func Test_cancel_ptjump()
+ CheckFeature quickfix
+
set tags=Xtags
call writefile(["!_TAG_FILE_ENCODING\tutf-8\t//",
\ "word\tfile1\tcmd1",
***************
*** 70,75 ****
--- 74,81 ----
endfunc

func Test_tagjump_switchbuf()
+ CheckFeature quickfix
+
set tags=Xtags
call writefile(["!_TAG_FILE_ENCODING\tutf-8\t//",
\ "second\tXfile1\t2",
*** ../vim-8.1.2372/src/testdir/test86.in 2016-09-09 14:40:40.000000000 +0200
--- src/testdir/test86.in 2019-12-01 14:25:26.970900417 +0100
***************
*** 9,15 ****
:so small.vim
:set encoding=latin1
:set noswapfile
! :if !has('python') | e! test.ok | wq! test.out | endif
:lang C
:fun Test()
:py import vim
--- 9,15 ----
:so small.vim
:set encoding=latin1
:set noswapfile
! :if !has('python') || !has('quickfix') | e! test.ok | wq! test.out | endif
:lang C
:fun Test()
:py import vim
*** ../vim-8.1.2372/src/testdir/test87.in 2018-07-22 04:30:16.372005905 +0200
--- src/testdir/test87.in 2019-12-01 14:26:07.266815841 +0100
***************
*** 3,9 ****
STARTTEST
:so small.vim
:set noswapfile
! :if !has('python3') | e! test.ok | wq! test.out | endif
:lang C
:fun Test()
:py3 import vim
--- 3,9 ----
STARTTEST
:so small.vim
:set noswapfile
! :if !has('python3') || !has('quickfix') | e! test.ok | wq! test.out | endif
:lang C
:fun Test()
:py3 import vim
*** ../vim-8.1.2372/src/testdir/test_autocmd.vim 2019-11-16 13:50:18.777646751 +0100
--- src/testdir/test_autocmd.vim 2019-12-01 15:15:09.886526875 +0100
***************
*** 1713,1722 ****
endfunc

func Test_nocatch_wipe_dummy_buffer()
! " Nasty autocommand: wipe buffer on any event.
! au * x bwipe
! call assert_fails('lv½ /x', 'E480')
! au!
endfunc

function s:Before_test_dirchanged()
--- 1713,1724 ----
endfunc

func Test_nocatch_wipe_dummy_buffer()
! if has('quickfix')
! " Nasty autocommand: wipe buffer on any event.
! au * x bwipe
! call assert_fails('lv½ /x', 'E480')
! au!
! endif
endfunc

function s:Before_test_dirchanged()
***************
*** 2291,2296 ****
--- 2293,2300 ----
endfunc

func Test_autocmd_was_using_freed_memory()
+ CheckFeature quickfix
+
pedit xx
n x
au WinEnter * quit
*** ../vim-8.1.2372/src/testdir/test_bufwintabinfo.vim 2019-10-27 05:12:38.284773720 +0100
--- src/testdir/test_bufwintabinfo.vim 2019-12-01 15:02:54.294048137 +0100
***************
*** 1,109 ****
" Tests for the getbufinfo(), getwininfo() and gettabinfo() functions

! function Test_getbufwintabinfo()
! edit Xtestfile1
! edit Xtestfile2
! let buflist = getbufinfo()
! call assert_equal(2, len(buflist))
! call assert_match('Xtestfile1', buflist[0].name)
! call assert_match('Xtestfile2', getbufinfo('Xtestfile2')[0].name)
! call assert_equal([], getbufinfo(2016))
! edit Xtestfile1
! hide edit Xtestfile2
! hide enew
! call assert_equal(3, len(getbufinfo({'bufloaded':1})))

! set tabstop&vim
! let b:editor = 'vim'
let l = getbufinfo('%')
! call assert_equal(bufnr('%'), l[0].bufnr)
! call assert_equal('vim', l[0].variables.editor)
! call assert_notequal(-1, index(l[0].windows, '%'->bufwinid()))
!
! " Test for getbufinfo() with 'bufmodified'
! call assert_equal(0, len(getbufinfo({'bufmodified' : 1})))
! call setbufline('Xtestfile1', 1, ["Line1"])
! let l = getbufinfo({'bufmodified' : 1})
! call assert_equal(1, len(l))
! call assert_equal(bufnr('Xtestfile1'), l[0].bufnr)
!
! if has('signs')
! call append(0, ['Linux', 'Windows', 'Mac'])
! sign define Mark text=>> texthl=Search
! exe "sign place 2 line=3 name=Mark buffer=" . bufnr('%')
! let l = getbufinfo('%')
! call assert_equal(2, l[0].signs[0].id)
! call assert_equal(3, l[0].signs[0].lnum)
! call assert_equal('Mark', l[0].signs[0].name)
! sign unplace *
! sign undefine Mark
! enew!
! endif
!
! only
! let w1_id = win_getid()
! new
! let w2_id = win_getid()
! tabnew | let w3_id = win_getid()
! new | let w4_id = win_getid()
! vert new | let w5_id = win_getid()
! eval 'green'->setwinvar(0, 'signal')
! tabfirst
! let winlist = getwininfo()
! call assert_equal(5, len(winlist))
! call assert_equal(winwidth(1), winlist[0].width)
! call assert_equal(1, winlist[0].wincol)
! " tabline adds one row in terminal, not in GUI
! let tablineheight = winlist[0].winrow == 2 ? 1 : 0
! call assert_equal(tablineheight + 1, winlist[0].winrow)
!
! call assert_equal(winbufnr(2), winlist[1].bufnr)
! call assert_equal(winheight(2), winlist[1].height)
! call assert_equal(1, winlist[1].wincol)
! call assert_equal(tablineheight + winheight(1) + 2, winlist[1].winrow)
!
! call assert_equal(1, winlist[2].winnr)
! call assert_equal(tablineheight + 1, winlist[2].winrow)
! call assert_equal(1, winlist[2].wincol)
!
! call assert_equal(winlist[2].width + 2, winlist[3].wincol)
! call assert_equal(1, winlist[4].wincol)
!
! call assert_equal(1, winlist[0].tabnr)
! call assert_equal(1, winlist[1].tabnr)
! call assert_equal(2, winlist[2].tabnr)
! call assert_equal(2, winlist[3].tabnr)
! call assert_equal(2, winlist[4].tabnr)
!
! call assert_equal('green', winlist[2].variables.signal)
! call assert_equal(w4_id, winlist[3].winid)
! let winfo = w5_id->getwininfo()[0]
! call assert_equal(2, winfo.tabnr)
! call assert_equal([], getwininfo(3))
!
! call settabvar(1, 'space', 'build')
! let tablist = gettabinfo()
! call assert_equal(2, len(tablist))
! call assert_equal(3, len(tablist[1].windows))
! call assert_equal(2, tablist[1].tabnr)
! call assert_equal('build', tablist[0].variables.space)
! call assert_equal(w2_id, tablist[0].windows[0])
! call assert_equal([], 3->gettabinfo())
!
! tabonly | only
!
! lexpr ''
! lopen
! copen
! let winlist = getwininfo()
! call assert_false(winlist[0].quickfix)
! call assert_false(winlist[0].loclist)
! call assert_true(winlist[1].quickfix)
! call assert_true(winlist[1].loclist)
! call assert_true(winlist[2].quickfix)
! call assert_false(winlist[2].loclist)
! wincmd t | only
! endfunction

function Test_get_buf_options()
let opts = bufnr()->getbufvar('&')
--- 1,112 ----
" Tests for the getbufinfo(), getwininfo() and gettabinfo() functions
+ source check.vim

! func Test_getbufwintabinfo()
! CheckFeature quickfix

! edit Xtestfile1
! edit Xtestfile2
! let buflist = getbufinfo()
! call assert_equal(2, len(buflist))
! call assert_match('Xtestfile1', buflist[0].name)
! call assert_match('Xtestfile2', getbufinfo('Xtestfile2')[0].name)
! call assert_equal([], getbufinfo(2016))
! edit Xtestfile1
! hide edit Xtestfile2
! hide enew
! call assert_equal(3, len(getbufinfo({'bufloaded':1})))
!
! set tabstop&vim
! let b:editor = 'vim'
! let l = getbufinfo('%')
! call assert_equal(bufnr('%'), l[0].bufnr)
! call assert_equal('vim', l[0].variables.editor)
! call assert_notequal(-1, index(l[0].windows, '%'->bufwinid()))
!
! " Test for getbufinfo() with 'bufmodified'
! call assert_equal(0, len(getbufinfo({'bufmodified' : 1})))
! call setbufline('Xtestfile1', 1, ["Line1"])
! let l = getbufinfo({'bufmodified' : 1})
! call assert_equal(1, len(l))
! call assert_equal(bufnr('Xtestfile1'), l[0].bufnr)
!
! if has('signs')
! call append(0, ['Linux', 'Windows', 'Mac'])
! sign define Mark text=>> texthl=Search
! exe "sign place 2 line=3 name=Mark buffer=" . bufnr('%')
let l = getbufinfo('%')
! call assert_equal(2, l[0].signs[0].id)
! call assert_equal(3, l[0].signs[0].lnum)
! call assert_equal('Mark', l[0].signs[0].name)
! sign unplace *
! sign undefine Mark
! enew!
! endif
!
! only
! let w1_id = win_getid()
! new
! let w2_id = win_getid()
! tabnew | let w3_id = win_getid()
! new | let w4_id = win_getid()
! vert new | let w5_id = win_getid()
! eval 'green'->setwinvar(0, 'signal')
! tabfirst
! let winlist = getwininfo()
! call assert_equal(5, len(winlist))
! call assert_equal(winwidth(1), winlist[0].width)
! call assert_equal(1, winlist[0].wincol)
! " tabline adds one row in terminal, not in GUI
! let tablineheight = winlist[0].winrow == 2 ? 1 : 0
! call assert_equal(tablineheight + 1, winlist[0].winrow)
!
! call assert_equal(winbufnr(2), winlist[1].bufnr)
! call assert_equal(winheight(2), winlist[1].height)
! call assert_equal(1, winlist[1].wincol)
! call assert_equal(tablineheight + winheight(1) + 2, winlist[1].winrow)
!
! call assert_equal(1, winlist[2].winnr)
! call assert_equal(tablineheight + 1, winlist[2].winrow)
! call assert_equal(1, winlist[2].wincol)
!
! call assert_equal(winlist[2].width + 2, winlist[3].wincol)
! call assert_equal(1, winlist[4].wincol)
!
! call assert_equal(1, winlist[0].tabnr)
! call assert_equal(1, winlist[1].tabnr)
! call assert_equal(2, winlist[2].tabnr)
! call assert_equal(2, winlist[3].tabnr)
! call assert_equal(2, winlist[4].tabnr)
!
! call assert_equal('green', winlist[2].variables.signal)
! call assert_equal(w4_id, winlist[3].winid)
! let winfo = w5_id->getwininfo()[0]
! call assert_equal(2, winfo.tabnr)
! call assert_equal([], getwininfo(3))
!
! call settabvar(1, 'space', 'build')
! let tablist = gettabinfo()
! call assert_equal(2, len(tablist))
! call assert_equal(3, len(tablist[1].windows))
! call assert_equal(2, tablist[1].tabnr)
! call assert_equal('build', tablist[0].variables.space)
! call assert_equal(w2_id, tablist[0].windows[0])
! call assert_equal([], 3->gettabinfo())
!
! tabonly | only
!
! lexpr ''
! lopen
! copen
! let winlist = getwininfo()
! call assert_false(winlist[0].quickfix)
! call assert_false(winlist[0].loclist)
! call assert_true(winlist[1].quickfix)
! call assert_true(winlist[1].loclist)
! call assert_true(winlist[2].quickfix)
! call assert_false(winlist[2].loclist)
! wincmd t | only
! endfunc

function Test_get_buf_options()
let opts = bufnr()->getbufvar('&')
*** ../vim-8.1.2372/src/testdir/test_channel.vim 2019-08-22 22:54:51.851603883 +0200
--- src/testdir/test_channel.vim 2019-12-01 15:03:40.557815247 +0100
***************
*** 1548,1553 ****
--- 1548,1554 ----

func Test_write_to_deleted_buffer()
CheckExecutable echo
+ CheckFeature quickfix

let job = job_start('echo hello', {'out_io': 'buffer', 'out_name': 'test_buffer', 'out_msg': 0})
let bufnr = bufnr('test_buffer')
*** ../vim-8.1.2372/src/testdir/test_edit.vim 2019-11-06 15:06:56.836272175 +0100
--- src/testdir/test_edit.vim 2019-12-01 15:04:44.741495738 +0100
***************
*** 982,987 ****
--- 982,989 ----
endfunc

func Test_edit_F1()
+ CheckFeature quickfix
+
" Pressing <f1>
new
call feedkeys(":set im\<cr>\<f1>\<c-l>", 'tnix')
*** ../vim-8.1.2372/src/testdir/test_execute_func.vim 2019-11-30 22:47:42.655331183 +0100
--- src/testdir/test_execute_func.vim 2019-12-01 14:54:55.520354319 +0100
***************
*** 1,6 ****
--- 1,7 ----
" test execute()

source view_util.vim
+ source check.vim

func NestedEval()
let nested = execute('echo "nested\nlines"')
***************
*** 104,109 ****
--- 105,112 ----
endfunc

func Test_win_execute_update_ruler()
+ CheckFeature quickfix
+
enew
call setline(1, range(500))
20
*** ../vim-8.1.2372/src/testdir/test_filter_cmd.vim 2019-10-26 17:33:00.033437181 +0200
--- src/testdir/test_filter_cmd.vim 2019-12-01 14:52:23.553003690 +0100
***************
*** 1,5 ****
--- 1,7 ----
" Test the :filter command modifier

+ source check.vim
+
func Test_filter()
edit Xdoesnotmatch
edit Xwillmatch
***************
*** 89,94 ****
--- 91,98 ----
endfunction

func Test_filter_commands()
+ CheckFeature quickfix
+
let g:test_filter_a = 1
let b:test_filter_b = 2
let test_filter_c = 3
*** ../vim-8.1.2372/src/testdir/test_gui.vim 2019-09-15 13:16:55.208317441 +0200
--- src/testdir/test_gui.vim 2019-12-01 15:05:40.153223032 +0100
***************
*** 722,727 ****
--- 722,729 ----
endfunc

func Test_menu()
+ CheckFeature quickfix
+
" Check Help menu exists
let help_menu = execute('menu Help')
call assert_match('Overview', help_menu)
*** ../vim-8.1.2372/src/testdir/test_makeencoding.vim 2019-06-15 17:57:43.972724036 +0200
--- src/testdir/test_makeencoding.vim 2019-12-01 15:06:44.324910302 +0100
***************
*** 1,7 ****
--- 1,9 ----
" Tests for 'makeencoding'.

source shared.vim
+ source check.vim

+ CheckFeature quickfix
let s:python = PythonProg()
if s:python == ''
throw 'Skipped: python program missing'
*** ../vim-8.1.2372/src/testdir/test_mksession.vim 2019-11-09 18:05:59.566045503 +0100
--- src/testdir/test_mksession.vim 2019-12-01 15:07:46.660609403 +0100
***************
*** 355,360 ****
--- 355,362 ----
if has('terminal')

func Test_mksession_terminal_shell()
+ CheckFeature quickfix
+
terminal
mksession! Xtest_mks.out
let lines = readfile('Xtest_mks.out')
***************
*** 436,441 ****
--- 438,445 ----
endfunc

func Test_mksession_terminal_restore_other()
+ CheckFeature quickfix
+
terminal
eval bufnr('%')->term_setrestore('other')
mksession! Xtest_mks.out
*** ../vim-8.1.2372/src/testdir/test_normal.vim 2019-11-29 20:26:09.179592194 +0100
--- src/testdir/test_normal.vim 2019-12-01 15:08:14.916473841 +0100
***************
*** 1,6 ****
--- 1,7 ----
" Test for various Normal mode commands

source shared.vim
+ source check.vim

func Setup_NewWindow()
10new
***************
*** 1240,1245 ****
--- 1241,1248 ----
endfunc

func Test_normal25_tag()
+ CheckFeature quickfix
+
" Testing for CTRL-] g CTRL-] g]
" CTRL-W g] CTRL-W CTRL-] CTRL-W g CTRL-]
h
*** ../vim-8.1.2372/src/testdir/test_popup.vim 2019-11-21 13:27:02.104312710 +0100
--- src/testdir/test_popup.vim 2019-12-01 14:08:59.439347258 +0100
***************
*** 490,495 ****
--- 490,497 ----
" Test that 'completefunc' on Scratch buffer with preview window works when
" it's OK.
func Test_completefunc_with_scratch_buffer()
+ CheckFeature quickfix
+
new +setlocal\ buftype=nofile\ bufhidden=wipe\ noswapfile
set completeopt+=preview
setlocal completefunc=DummyCompleteFive
***************
*** 665,670 ****
--- 667,673 ----

func Test_popup_and_window_resize()
CheckFeature terminal
+ CheckFeature quickfix
CheckNotGui

let h = winheight(0)
***************
*** 697,710 ****
endfunc

func Test_popup_and_preview_autocommand()
! " This used to crash Vim
! if !has('python')
! return
! endif
! let h = winheight(0)
! if h < 15
! return
endif
new
augroup MyBufAdd
au!
--- 700,712 ----
endfunc

func Test_popup_and_preview_autocommand()
! CheckFeature python
! CheckFeature quickfix
! if winheight(0) < 15
! throw 'Skipped: window height insufficient'
endif
+
+ " This used to crash Vim
new
augroup MyBufAdd
au!
***************
*** 735,743 ****
endfunc

func Test_popup_and_previewwindow_dump()
! if !CanRunVimInTerminal()
! throw 'Skipped: cannot make screendumps'
! endif
let lines =<< trim END
set previewheight=9
silent! pedit
--- 737,745 ----
endfunc

func Test_popup_and_previewwindow_dump()
! CheckScreendump
! CheckFeature quickfix
!
let lines =<< trim END
set previewheight=9
silent! pedit
***************
*** 804,812 ****
endfunc

func Test_popup_position()
! if !CanRunVimInTerminal()
! throw 'Skipped: cannot make screendumps'
! endif
let lines =<< trim END
123456789_123456789_123456789_a
123456789_123456789_123456789_b
--- 806,813 ----
endfunc

func Test_popup_position()
! CheckScreendump
!
let lines =<< trim END
123456789_123456789_123456789_a
123456789_123456789_123456789_b
***************
*** 847,855 ****
endfunc

func Test_popup_command()
! if !CanRunVimInTerminal() || !has('menu')
! throw 'Skipped: cannot make screendumps and/or menu feature missing'
! endif

let lines =<< trim END
one two three four five
--- 848,855 ----
endfunc

func Test_popup_command()
! CheckScreendump
! CheckFeature menu

let lines =<< trim END
one two three four five
*** ../vim-8.1.2372/src/testdir/test_popupwin.vim 2019-11-30 22:47:42.655331183 +0100
--- src/testdir/test_popupwin.vim 2019-12-01 14:12:27.882396223 +0100
***************
*** 2700,2705 ****
--- 2700,2706 ----

func Test_previewpopup()
CheckScreendump
+ CheckFeature quickfix

call writefile([
\ "!_TAG_FILE_ENCODING\tutf-8\t//",
***************
*** 2871,2876 ****
--- 2872,2878 ----

func Test_popupmenu_info_border()
CheckScreendump
+ CheckFeature quickfix

let lines = Get_popupmenu_lines()
call add(lines, 'set completepopup=height:4,highlight:InfoPopup')
***************
*** 2908,2913 ****
--- 2910,2916 ----

func Test_popupmenu_info_noborder()
CheckScreendump
+ CheckFeature quickfix

let lines = Get_popupmenu_lines()
call add(lines, 'set completepopup=height:4,border:off')
***************
*** 2925,2930 ****
--- 2928,2934 ----

func Test_popupmenu_info_align_menu()
CheckScreendump
+ CheckFeature quickfix

let lines = Get_popupmenu_lines()
call add(lines, 'set completepopup=height:4,border:off,align:menu')
***************
*** 2955,2960 ****
--- 2959,2965 ----

func Test_popupmenu_info_hidden()
CheckScreendump
+ CheckFeature quickfix

let lines = Get_popupmenu_lines()
call add(lines, 'call InfoHidden()')
*** ../vim-8.1.2372/src/testdir/test_preview.vim 2017-07-23 21:54:21.000000000 +0200
--- src/testdir/test_preview.vim 2019-12-01 15:08:40.616350964 +0100
***************
*** 1,4 ****
--- 1,6 ----
" Tests for the preview window
+ source check.vim
+ CheckFeature quickfix

func Test_Psearch()
" this used to cause ml_get errors
*** ../vim-8.1.2372/src/testdir/test_startup.vim 2019-10-29 04:12:38.620582834 +0100
--- src/testdir/test_startup.vim 2019-12-01 15:10:16.859894048 +0100
***************
*** 279,284 ****
--- 279,286 ----

" Test the '-q [errorfile]' argument.
func Test_q_arg()
+ CheckFeature quickfix
+
let source_file = has('win32') ? '..\memfile.c' : '../memfile.c'
let after =<< trim [CODE]
call writefile([&errorfile, string(getpos("."))], "Xtestout")
***************
*** 458,471 ****
call assert_equal('Too many edit arguments: "xxx"', out[1])
call assert_equal('More info with: "vim -h"', out[2])

! " Detect invalid repeated arguments '-t foo -t foo", '-q foo -q foo'.
! for opt in ['-t', '-q']
! let out = split(system(GetVimCommand() .. repeat(' ' .. opt .. ' foo', 2)), "\n")
! call assert_equal(1, v:shell_error)
! call assert_match('^VIM - Vi IMproved .* (.*)$', out[0])
! call assert_equal('Too many edit arguments: "' .. opt .. '"', out[1])
! call assert_equal('More info with: "vim -h"', out[2])
! endfor

for opt in [' -cq', ' --cmd q', ' +', ' -S foo']
let out = split(system(GetVimCommand() .. repeat(opt, 11)), "\n")
--- 460,475 ----
call assert_equal('Too many edit arguments: "xxx"', out[1])
call assert_equal('More info with: "vim -h"', out[2])

! if has('quickfix')
! " Detect invalid repeated arguments '-t foo -t foo", '-q foo -q foo'.
! for opt in ['-t', '-q']
! let out = split(system(GetVimCommand() .. repeat(' ' .. opt .. ' foo', 2)), "\n")
! call assert_equal(1, v:shell_error)
! call assert_match('^VIM - Vi IMproved .* (.*)$', out[0])
! call assert_equal('Too many edit arguments: "' .. opt .. '"', out[1])
! call assert_equal('More info with: "vim -h"', out[2])
! endfor
! endif

for opt in [' -cq', ' --cmd q', ' +', ' -S foo']
let out = split(system(GetVimCommand() .. repeat(opt, 11)), "\n")
*** ../vim-8.1.2372/src/testdir/test_statusline.vim 2019-11-30 15:05:17.995249610 +0100
--- src/testdir/test_statusline.vim 2019-12-01 14:53:04.244830201 +0100
***************
*** 7,12 ****
--- 7,13 ----
" %X

source view_util.vim
+ source check.vim

func s:get_statusline()
return ScreenLines(&lines - 1, &columns)[0]
***************
*** 60,65 ****
--- 61,68 ----
endfunc

func Test_statusline()
+ CheckFeature quickfix
+
new Xstatusline
only
set laststatus=2
*** ../vim-8.1.2372/src/testdir/test_tabpage.vim 2019-09-06 22:45:47.578271556 +0200
--- src/testdir/test_tabpage.vim 2019-12-01 14:54:09.664550637 +0100
***************
*** 1,8 ****
--- 1,11 ----
" Tests for tabpage

source screendump.vim
+ source check.vim

function Test_tabpage()
+ CheckFeature quickfix
+
bw!
" Simple test for opening and closing a tab page
tabnew
***************
*** 220,225 ****
--- 223,230 ----
endfunction

function Test_tabpage_with_tab_modifier()
+ CheckFeature quickfix
+
for n in range(4)
tabedit
endfor
*** ../vim-8.1.2372/src/testdir/test_window_cmd.vim 2019-10-07 22:27:30.407421974 +0200
--- src/testdir/test_window_cmd.vim 2019-12-01 14:56:12.096025785 +0100
***************
*** 175,180 ****
--- 175,182 ----
endfunc

func Test_window_preview()
+ CheckFeature quickfix
+
" Open a preview window
pedit Xa
call assert_equal(2, winnr('$'))
***************
*** 193,198 ****
--- 195,202 ----
endfunc

func Test_window_preview_from_help()
+ CheckFeature quickfix
+
filetype on
call writefile(['/* some C code */'], 'Xpreview.c')
help
***************
*** 438,443 ****
--- 442,449 ----
endfunc

func Test_win_screenpos()
+ CheckFeature quickfix
+
call assert_equal(1, winnr('$'))
split
vsplit
***************
*** 451,456 ****
--- 457,464 ----
endfunc

func Test_window_jump_tag()
+ CheckFeature quickfix
+
help
/iccf
call assert_match('^|iccf|', getline('.'))
***************
*** 887,892 ****
--- 895,902 ----
endfunc

func Test_win_splitmove()
+ CheckFeature quickfix
+
edit a
leftabove split b
leftabove vsplit c
*** ../vim-8.1.2372/src/testdir/test_window_id.vim 2019-09-08 21:51:36.453843927 +0200
--- src/testdir/test_window_id.vim 2019-12-01 15:10:54.319717436 +0100
***************
*** 1,4 ****
--- 1,5 ----
" Test using the window ID.
+ source check.vim

func Test_win_getid()
edit one
***************
*** 94,99 ****
--- 95,102 ----
endfunc

func Test_win_getid_curtab()
+ CheckFeature quickfix
+
tabedit X
tabfirst
copen
*** ../vim-8.1.2372/src/version.c 2019-11-30 22:57:49.936582177 +0100
--- src/version.c 2019-12-01 15:21:35.184763449 +0100
***************
*** 744,745 ****
--- 744,747 ----
{ /* Add new patch number below this line */
+ /**/
+ 2373,
/**/

--
If you feel lonely, try schizophrenia.

/// Bram Moolenaar -- Br...@Moolenaar.net -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
Reply all
Reply to author
Forward
0 new messages