1
0
forked from aniani/vim

patch 9.1.1051: tests: no support for env variables when running Vim in terminal

Problem:  tests: no support for env variables when running Vim in
          terminal
Solution: support the "env" argument in RunVimInTerminal(),
          close swapfiles properly in test_termcodes,
          use CheckFeature in test_termencoding

Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Christian Brabandt
2025-01-25 15:01:42 +01:00
parent efc41a5958
commit 08ea2e1fb0
4 changed files with 17 additions and 11 deletions

View File

@@ -57,6 +57,7 @@ endfunc
" "wait_for_ruler" - if zero then don't wait for ruler to show " "wait_for_ruler" - if zero then don't wait for ruler to show
" "no_clean" - if non-zero then remove "--clean" from the command " "no_clean" - if non-zero then remove "--clean" from the command
" "cmd" - run any other command, e.g. "xxd" (used in xxd test) " "cmd" - run any other command, e.g. "xxd" (used in xxd test)
" "env" - additional environment variables, e.g. $TERM variable
func RunVimInTerminal(arguments, options) func RunVimInTerminal(arguments, options)
" If Vim doesn't exit a swap file remains, causing other tests to fail. " If Vim doesn't exit a swap file remains, causing other tests to fail.
" Remove it here. " Remove it here.
@@ -109,6 +110,10 @@ func RunVimInTerminal(arguments, options)
" Accept other options whose name starts with 'term_'. " Accept other options whose name starts with 'term_'.
call extend(options, filter(copy(a:options), 'v:key =~# "^term_"')) call extend(options, filter(copy(a:options), 'v:key =~# "^term_"'))
" Accept the env dict
if !empty(get(a:options, 'env', {}))
let options.env = get(a:options, 'env')
endif
let buf = term_start(cmd, options) let buf = term_start(cmd, options)

View File

@@ -301,7 +301,7 @@ func Test_term_mouse_middle_click_no_clipboard()
let &ttymouse = save_ttymouse let &ttymouse = save_ttymouse
let &term = save_term let &term = save_term
let &mouse = save_mouse let &mouse = save_mouse
close! bw!
endfunc endfunc
func Test_term_mouse_middle_click_insert_mode() func Test_term_mouse_middle_click_insert_mode()
@@ -370,7 +370,7 @@ func Test_term_mouse_switch_win_insert_mode()
let &term = save_term let &term = save_term
let &ttymouse = save_ttymouse let &ttymouse = save_ttymouse
call test_override('no_query_mouse', 0) call test_override('no_query_mouse', 0)
close! bw!
endfunc endfunc
" Test for using the mouse to increase the height of the cmdline window " Test for using the mouse to increase the height of the cmdline window
@@ -1051,7 +1051,7 @@ func Test_mouse_alt_leftclick()
let &ttymouse = save_ttymouse let &ttymouse = save_ttymouse
set mousetime& mousemodel& set mousetime& mousemodel&
call test_override('no_query_mouse', 0) call test_override('no_query_mouse', 0)
close! bw!
endfunc endfunc
func Test_xterm_mouse_click_in_fold_columns() func Test_xterm_mouse_click_in_fold_columns()
@@ -1276,7 +1276,7 @@ func Test_term_mouse_visual_mode()
let &term = save_term let &term = save_term
let &ttymouse = save_ttymouse let &ttymouse = save_ttymouse
call test_override('no_query_mouse', 0) call test_override('no_query_mouse', 0)
close! bw!
endfunc endfunc
" Test for displaying the popup menu using the right mouse click " Test for displaying the popup menu using the right mouse click
@@ -1311,7 +1311,7 @@ func Test_term_mouse_popup_menu()
let &ttymouse = save_ttymouse let &ttymouse = save_ttymouse
let &mousemodel = save_mousemodel let &mousemodel = save_mousemodel
call test_override('no_query_mouse', 0) call test_override('no_query_mouse', 0)
close! bw!
endfunc endfunc
" Test for 'mousemodel' set to popup_setpos to move the cursor where the popup " Test for 'mousemodel' set to popup_setpos to move the cursor where the popup
@@ -1437,7 +1437,7 @@ func Test_term_mouse_popup_menu_setpos()
let &ttymouse = save_ttymouse let &ttymouse = save_ttymouse
let &mousemodel = save_mousemodel let &mousemodel = save_mousemodel
call test_override('no_query_mouse', 0) call test_override('no_query_mouse', 0)
close! bw!
endfunc endfunc
" Test for searching for the word under the cursor using Shift-Right or " Test for searching for the word under the cursor using Shift-Right or
@@ -1476,7 +1476,7 @@ func Test_term_mouse_search()
let &term = save_term let &term = save_term
let &ttymouse = save_ttymouse let &ttymouse = save_ttymouse
call test_override('no_query_mouse', 0) call test_override('no_query_mouse', 0)
close! bw!
endfunc endfunc
" Test for selecting an entry in the quickfix/location list window using the " Test for selecting an entry in the quickfix/location list window using the
@@ -2739,5 +2739,4 @@ func Test_terminal_builtin_without_gui()
call assert_notequal(-1, index(output, 'builtin_dumb')) call assert_notequal(-1, index(output, 'builtin_dumb'))
endfunc endfunc
" vim: shiftwidth=2 sts=2 expandtab " vim: shiftwidth=2 sts=2 expandtab

View File

@@ -1,10 +1,10 @@
" Test for setting 'encoding' to something else than the terminal uses, then " Test for setting 'encoding' to something else than the terminal uses, then
" setting 'termencoding' to make it work. " setting 'termencoding' to make it work.
source check.vim
" This only works with "iconv". " This only works with "iconv".
if !has('iconv') CheckFeature iconv
throw 'Skipped: iconv feature missing'
endif
source screendump.vim source screendump.vim
if !CanRunVimInTerminal() if !CanRunVimInTerminal()

View File

@@ -704,6 +704,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
1051,
/**/ /**/
1050, 1050,
/**/ /**/