Mercurial > vim
view src/testdir/test_set.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 | 9a7fb0665f9f |
children |
line wrap: on
line source
" Tests for the :set command source check.vim function Test_set_backslash() let isk_save = &isk set isk=a,b,c set isk+=d call assert_equal('a,b,c,d', &isk) set isk+=\\,e call assert_equal('a,b,c,d,\,e', &isk) set isk-=e call assert_equal('a,b,c,d,\', &isk) set isk-=\\ call assert_equal('a,b,c,d', &isk) let &isk = isk_save endfunction function Test_set_add() let wig_save = &wig set wildignore=*.png, set wildignore+=*.jpg call assert_equal('*.png,*.jpg', &wig) let &wig = wig_save endfunction " :set, :setlocal, :setglobal without arguments show values of options. func Test_set_no_arg() set textwidth=79 let a = execute('set') call assert_match("^\n--- Options ---\n.*textwidth=79\\>", a) set textwidth& setlocal textwidth=78 let a = execute('setlocal') call assert_match("^\n--- Local option values ---\n.*textwidth=78\\>", a) setlocal textwidth& setglobal textwidth=77 let a = execute('setglobal') call assert_match("^\n--- Global option values ---\n.*textwidth=77\\>", a) setglobal textwidth& endfunc func Test_set_termcap() CheckNotGui let lines = split(execute('set termcap'), "\n") call assert_match('--- Terminal codes ---', lines[0]) " four columns call assert_match('t_..=.*t_..=.*t_..=.*t_..=', lines[1]) for keys_idx in range(len(lines)) if lines[keys_idx] =~ '--- Terminal keys ---' break endif endfor call assert_true(keys_idx < len(lines)) " three columns call assert_match('<[^>]*> .*<[^>]*> .*<[^>]*> ', lines[keys_idx + 1]) let more_lines = split(execute('set! termcap'), "\n") for i in range(len(more_lines)) if more_lines[i] =~ '--- Terminal keys ---' break endif endfor call assert_true(i < len(more_lines)) call assert_true(i > keys_idx) call assert_true(len(more_lines) - i > len(lines) - keys_idx) endfunc " vim: shiftwidth=2 sts=2 expandtab