Mercurial > vim
view src/testdir/test_matchparen.vim @ 34780:54890be01c00 v9.1.0265
patch 9.1.0265: console dialog cannot save unnamed buffers
Commit: https://github.com/vim/vim/commit/df46115fc839c8912ed60646e86a412e5180ba1d
Author: glepnir <glephunter@gmail.com>
Date: Thu Apr 4 22:23:29 2024 +0200
patch 9.1.0265: console dialog cannot save unnamed buffers
Problem: console dialog cannot save unnamed buffers
Solution: set bufname before save (glepnir). Define dialog_con_gui
to test for GUI+Console dialog support, use it to skip
the test when the GUI feature has been defined.
Note: The dialog_changed() function will also try to call the
browse_save_fname() function, when FEAT_BROWSE is defined (which is only
defined in a GUI build of Vim). This will eventually lead to a call of
do_browse(), which causes an error message if a GUI is not currently
running (see the TODO: in do_browse()) and will then lead to a failure
in Test_goto_buf_with_onfirm().
Therefore, we must disable the Test_goto_buf_with_onfirm(), when the
dialog_con_gui feature is enabled (which basically means dialog feature
for GUI and Console builds, in contrast to the dialog_con and dialog_gui
feature).
(Previously this wasn't a problem, because the test aborted in the YES
case for the :confirm :b XgotoConf case and did therefore not run into
the browse function call)
closes: #14398
Signed-off-by: glepnir <glephunter@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 04 Apr 2024 23:45:02 +0200 |
parents | 2ee041017eb4 |
children | 1cd9db1c8bbd |
line wrap: on
line source
" Test for the matchparen plugin if !has('gui_running') && has('unix') set term=ansi endif source view_util.vim source check.vim source screendump.vim " Test for scrolling that modifies buffer during visual block func Test_visual_block_scroll() CheckScreendump let lines =<< trim END source $VIMRUNTIME/plugin/matchparen.vim set scrolloff=1 call setline(1, ['a', 'b', 'c', 'd', 'e', '', '{', '}', '{', 'f', 'g', '}']) call cursor(5, 1) END let filename = 'Xvisualblockmodifiedscroll' call writefile(lines, filename, 'D') let buf = RunVimInTerminal('-S '.filename, #{rows: 7}) call term_sendkeys(buf, "V\<C-D>\<C-D>") call VerifyScreenDump(buf, 'Test_display_visual_block_scroll', {}) call StopVimInTerminal(buf) endfunc " Test for clearing paren highlight when switching buffers func Test_matchparen_clear_highlight() CheckScreendump let lines =<< trim END source $VIMRUNTIME/plugin/matchparen.vim set hidden call setline(1, ['()']) normal 0 func OtherBuffer() enew exe "normal iaa\<Esc>0" endfunc END call writefile(lines, 'XMatchparenClear', 'D') let buf = RunVimInTerminal('-S XMatchparenClear', #{rows: 5}) call VerifyScreenDump(buf, 'Test_matchparen_clear_highlight_1', {}) call term_sendkeys(buf, ":call OtherBuffer()\<CR>:\<Esc>") call VerifyScreenDump(buf, 'Test_matchparen_clear_highlight_2', {}) call term_sendkeys(buf, "\<C-^>:\<Esc>") call VerifyScreenDump(buf, 'Test_matchparen_clear_highlight_1', {}) call term_sendkeys(buf, "\<C-^>:\<Esc>") call VerifyScreenDump(buf, 'Test_matchparen_clear_highlight_2', {}) call StopVimInTerminal(buf) endfunc " Test for matchparen highlight when switching buffer in win_execute() func Test_matchparen_win_execute() CheckScreendump let lines =<< trim END source $VIMRUNTIME/plugin/matchparen.vim let s:win = win_getid() call setline(1, '{}') split func SwitchBuf() call win_execute(s:win, 'enew | buffer #') endfunc END call writefile(lines, 'XMatchparenWinExecute', 'D') let buf = RunVimInTerminal('-S XMatchparenWinExecute', #{rows: 5}) call VerifyScreenDump(buf, 'Test_matchparen_win_execute_1', {}) " Switching buffer away and back shouldn't change matchparen highlight. call term_sendkeys(buf, ":call SwitchBuf()\<CR>:\<Esc>") call VerifyScreenDump(buf, 'Test_matchparen_win_execute_1', {}) call StopVimInTerminal(buf) endfunc " Test for scrolling that modifies buffer during visual block func Test_matchparen_pum_clear() CheckScreendump let lines =<< trim END source $VIMRUNTIME/plugin/matchparen.vim set completeopt=menuone call setline(1, ['aa', 'aaa', 'aaaa', '(a)']) call cursor(4, 3) END let filename = 'Xmatchparen' call writefile(lines, filename, 'D') let buf = RunVimInTerminal('-S '.filename, #{rows: 10}) call term_sendkeys(buf, "i\<C-N>\<C-N>") call VerifyScreenDump(buf, 'Test_matchparen_pum_clear_1', {}) call StopVimInTerminal(buf) endfunc " vim: shiftwidth=2 sts=2 expandtab