mirror of
https://github.com/neovim/neovim.git
synced 2025-09-06 19:38:20 +00:00
Merge pull request #24818 from zeertzjq/vim-8.2.0186
vim-patch:8.1.2403,8.2.{0186,0195,0310,0454,0533,2908,2910,3518,4339}
This commit is contained in:
@@ -489,33 +489,6 @@ else
|
||||
endtry
|
||||
endif
|
||||
|
||||
" Names of flaky tests.
|
||||
let s:flaky_tests = [
|
||||
\ 'Test_autocmd_SafeState()',
|
||||
\ 'Test_cursorhold_insert()',
|
||||
\ 'Test_exit_callback_interval()',
|
||||
\ 'Test_map_timeout_with_timer_interrupt()',
|
||||
\ 'Test_out_cb()',
|
||||
\ 'Test_popup_and_window_resize()',
|
||||
\ 'Test_quoteplus()',
|
||||
\ 'Test_quotestar()',
|
||||
\ 'Test_reltime()',
|
||||
\ 'Test_state()',
|
||||
\ 'Test_term_mouse_double_click_to_create_tab()',
|
||||
\ 'Test_term_mouse_multiple_clicks_to_visually_select()',
|
||||
\ 'Test_terminal_composing_unicode()',
|
||||
\ 'Test_terminal_redir_file()',
|
||||
\ 'Test_terminal_tmap()',
|
||||
\ 'Test_timer_oneshot()',
|
||||
\ 'Test_timer_paused()',
|
||||
\ 'Test_timer_repeat_many()',
|
||||
\ 'Test_timer_repeat_three()',
|
||||
\ 'Test_timer_stop_all_in_callback()',
|
||||
\ 'Test_timer_stop_in_callback()',
|
||||
\ 'Test_timer_with_partial_callback()',
|
||||
\ 'Test_termwinscroll()',
|
||||
\ ]
|
||||
|
||||
" Delete the .res file, it may change behavior for completion
|
||||
call delete(fnamemodify(g:testname, ':r') .. '.res')
|
||||
|
||||
@@ -565,8 +538,7 @@ for g:testfunc in sort(s:tests)
|
||||
" - it fails five times (with a different message)
|
||||
if len(v:errors) > 0
|
||||
\ && $TEST_NO_RETRY == ''
|
||||
\ && (index(s:flaky_tests, g:testfunc) >= 0
|
||||
\ || g:test_is_flaky)
|
||||
\ && g:test_is_flaky
|
||||
while 1
|
||||
call add(s:messages, 'Found errors in ' .. g:testfunc .. ':')
|
||||
call extend(s:messages, v:errors)
|
||||
|
@@ -571,7 +571,7 @@ func Test_quit_with_arglist()
|
||||
call term_sendkeys(buf, ":set nomore\n")
|
||||
call term_sendkeys(buf, ":args a b c\n")
|
||||
call term_sendkeys(buf, ":quit\n")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call WaitForAssert({-> assert_match('^E173:', term_getline(buf, 6))})
|
||||
call StopVimInTerminal(buf)
|
||||
|
||||
@@ -580,16 +580,16 @@ func Test_quit_with_arglist()
|
||||
call term_sendkeys(buf, ":set nomore\n")
|
||||
call term_sendkeys(buf, ":args a b c\n")
|
||||
call term_sendkeys(buf, ":confirm quit\n")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call WaitForAssert({-> assert_match('^\[Y\]es, (N)o: *$',
|
||||
\ term_getline(buf, 6))})
|
||||
call term_sendkeys(buf, "N")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call term_sendkeys(buf, ":confirm quit\n")
|
||||
call WaitForAssert({-> assert_match('^\[Y\]es, (N)o: *$',
|
||||
\ term_getline(buf, 6))})
|
||||
call term_sendkeys(buf, "Y")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call WaitForAssert({-> assert_equal("finished", term_getstatus(buf))})
|
||||
only!
|
||||
" When this test fails, swap files are left behind which breaks subsequent
|
||||
|
@@ -2013,6 +2013,7 @@ endfunc
|
||||
|
||||
" Test for BufUnload autocommand that unloads all the other buffers
|
||||
func Test_bufunload_all()
|
||||
let g:test_is_flaky = 1
|
||||
call writefile(['Test file Xxx1'], 'Xxx1')"
|
||||
call writefile(['Test file Xxx2'], 'Xxx2')"
|
||||
|
||||
@@ -2961,6 +2962,7 @@ endfunc
|
||||
|
||||
func Test_autocmd_SafeState()
|
||||
CheckRunVimInTerminal
|
||||
let g:test_is_flaky = 1
|
||||
|
||||
let lines =<< trim END
|
||||
let g:safe = 0
|
||||
@@ -2974,17 +2976,19 @@ func Test_autocmd_SafeState()
|
||||
call writefile(lines, 'XSafeState')
|
||||
let buf = RunVimInTerminal('-S XSafeState', #{rows: 6})
|
||||
|
||||
" Sometimes we loop to handle an K_IGNORE
|
||||
" Sometimes we loop to handle a K_IGNORE, SafeState may be trigered once or
|
||||
" more often.
|
||||
call term_sendkeys(buf, ":echo g:safe\<CR>")
|
||||
call WaitForAssert({-> assert_match('^[12] ', term_getline(buf, 6))}, 1000)
|
||||
call WaitForAssert({-> assert_match('^\d ', term_getline(buf, 6))}, 1000)
|
||||
|
||||
" SafeStateAgain should be invoked at least three times
|
||||
call term_sendkeys(buf, ":echo g:again\<CR>")
|
||||
call WaitForAssert({-> assert_match('^xxxx', term_getline(buf, 6))}, 1000)
|
||||
call WaitForAssert({-> assert_match('^xxx', term_getline(buf, 6))}, 1000)
|
||||
|
||||
call term_sendkeys(buf, ":let g:again = ''\<CR>:call CallTimer()\<CR>")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf, 50)
|
||||
call term_sendkeys(buf, ":\<CR>")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf, 50)
|
||||
call term_sendkeys(buf, ":echo g:again\<CR>")
|
||||
call WaitForAssert({-> assert_match('xtx', term_getline(buf, 6))}, 1000)
|
||||
|
||||
@@ -3008,7 +3012,7 @@ func Test_autocmd_CmdWinEnter()
|
||||
let buf = RunVimInTerminal('-S '.filename, #{rows: 6})
|
||||
|
||||
call term_sendkeys(buf, "q:")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call term_sendkeys(buf, ":echo b:dummy_var\<cr>")
|
||||
call WaitForAssert({-> assert_match('^This is a dummy', term_getline(buf, 6))}, 2000)
|
||||
call term_sendkeys(buf, ":echo &buftype\<cr>")
|
||||
@@ -3042,6 +3046,7 @@ func Test_autocmd_was_using_freed_memory()
|
||||
endfunc
|
||||
|
||||
func Test_BufWrite_lockmarks()
|
||||
let g:test_is_flaky = 1
|
||||
edit! Xtest
|
||||
call setline(1, ['a', 'b', 'c', 'd'])
|
||||
|
||||
|
@@ -217,7 +217,6 @@ func Test_appendbufline_redraw()
|
||||
END
|
||||
call writefile(lines, 'XscriptMatchCommon')
|
||||
let buf = RunVimInTerminal('-S XscriptMatchCommon', #{rows: 10})
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_appendbufline_1', {})
|
||||
|
||||
call StopVimInTerminal(buf)
|
||||
|
@@ -26,9 +26,10 @@ func Check_X11_Connection()
|
||||
endfunc
|
||||
|
||||
func Test_client_server()
|
||||
let g:test_is_flaky = 1
|
||||
let cmd = GetVimCommand()
|
||||
if cmd == ''
|
||||
return
|
||||
throw 'GetVimCommand() failed'
|
||||
endif
|
||||
call Check_X11_Connection()
|
||||
|
||||
|
@@ -1482,7 +1482,7 @@ func Test_verbose_option()
|
||||
call writefile(lines, 'XTest_verbose')
|
||||
|
||||
let buf = RunVimInTerminal('-S XTest_verbose', {'rows': 12})
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
call term_sendkeys(buf, ":DoSomething\<CR>")
|
||||
call VerifyScreenDump(buf, 'Test_verbose_option_1', {})
|
||||
|
||||
@@ -1560,7 +1560,7 @@ func Test_cmdwin_restore()
|
||||
call writefile(lines, 'XTest_restore')
|
||||
|
||||
let buf = RunVimInTerminal('-S XTest_restore', {'rows': 12})
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
call term_sendkeys(buf, "q:")
|
||||
call VerifyScreenDump(buf, 'Test_cmdwin_restore_1', {})
|
||||
|
||||
@@ -1580,6 +1580,21 @@ func Test_cmdwin_restore()
|
||||
call delete('XTest_restore')
|
||||
endfunc
|
||||
|
||||
func Test_cmdwin_no_terminal()
|
||||
CheckFeature cmdwin
|
||||
CheckFeature terminal
|
||||
CheckNotMSWindows
|
||||
|
||||
let buf = RunVimInTerminal('', {'rows': 12})
|
||||
call TermWait(buf, 50)
|
||||
call term_sendkeys(buf, ":set cmdheight=2\<CR>")
|
||||
call term_sendkeys(buf, "q:")
|
||||
call term_sendkeys(buf, ":let buf = term_start(['/bin/echo'], #{hidden: 1})\<CR>")
|
||||
call VerifyScreenDump(buf, 'Test_cmdwin_no_terminal', {})
|
||||
call term_sendkeys(buf, ":q\<CR>")
|
||||
call StopVimInTerminal(buf)
|
||||
endfunc
|
||||
|
||||
func Test_buffers_lastused()
|
||||
" check that buffers are sorted by time when wildmode has lastused
|
||||
edit bufc " oldest
|
||||
@@ -1687,7 +1702,7 @@ func Test_cmdlineclear_tabenter()
|
||||
|
||||
call writefile(lines, 'XtestCmdlineClearTabenter')
|
||||
let buf = RunVimInTerminal('-S XtestCmdlineClearTabenter', #{rows: 10})
|
||||
call term_wait(buf, 50)
|
||||
call TermWait(buf, 25)
|
||||
" in one tab make the command line higher with CTRL-W -
|
||||
call term_sendkeys(buf, ":tabnew\<cr>\<C-w>-\<C-w>-gtgt")
|
||||
call VerifyScreenDump(buf, 'Test_cmdlineclear_tabenter', {})
|
||||
|
@@ -136,41 +136,30 @@ func Test_cursorline_screenline()
|
||||
call writefile(lines, filename)
|
||||
" basic test
|
||||
let buf = RunVimInTerminal('-S '. filename, #{rows: 20})
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_1', {})
|
||||
call term_sendkeys(buf, "fagj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_2', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_3', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_4', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_5', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_6', {})
|
||||
" test with set list and cursorlineopt containing number
|
||||
call term_sendkeys(buf, "gg0")
|
||||
call term_sendkeys(buf, ":set list cursorlineopt+=number listchars=space:-\<cr>")
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_7', {})
|
||||
call term_sendkeys(buf, "fagj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_8', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_9', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_10', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_11', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_12', {})
|
||||
if exists("+foldcolumn") && exists("+signcolumn") && exists("+breakindent")
|
||||
" test with set foldcolumn signcoloumn and breakindent
|
||||
@@ -178,19 +167,14 @@ func Test_cursorline_screenline()
|
||||
call term_sendkeys(buf, ":set breakindent foldcolumn=2 signcolumn=yes\<cr>")
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_13', {})
|
||||
call term_sendkeys(buf, "fagj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_14', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_15', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_16', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_17', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_18', {})
|
||||
call term_sendkeys(buf, ":set breakindent& foldcolumn& signcolumn&\<cr>")
|
||||
endif
|
||||
@@ -200,19 +184,14 @@ func Test_cursorline_screenline()
|
||||
call term_sendkeys(buf, ":set nonumber\<cr>")
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_19', {})
|
||||
call term_sendkeys(buf, "fagj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_20', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_21', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_22', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_23', {})
|
||||
call term_sendkeys(buf, "gj")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_'. filename. '_24', {})
|
||||
call term_sendkeys(buf, ":set list& cursorlineopt& listchars&\<cr>")
|
||||
|
||||
|
@@ -36,7 +36,7 @@ endfunc
|
||||
" If the expected output argument is supplied, then check for it.
|
||||
func RunDbgCmd(buf, cmd, ...)
|
||||
call term_sendkeys(a:buf, a:cmd . "\r")
|
||||
call term_wait(a:buf, 20)
|
||||
call TermWait(a:buf)
|
||||
|
||||
if a:0 != 0
|
||||
let options = #{match: 'equal'}
|
||||
|
@@ -852,11 +852,11 @@ func VerifyInternal(buf, dumpfile, extra)
|
||||
call term_sendkeys(a:buf, ":diffupdate!\<CR>")
|
||||
" trailing : for leaving the cursor on the command line
|
||||
call term_sendkeys(a:buf, ":set diffopt=internal,filler" . a:extra . "\<CR>:")
|
||||
call TermWait(a:buf)
|
||||
call VerifyScreenDump(a:buf, a:dumpfile, {})
|
||||
endfunc
|
||||
|
||||
func Test_diff_screen()
|
||||
let g:test_is_flaky = 1
|
||||
CheckScreendump
|
||||
CheckFeature menu
|
||||
|
||||
|
@@ -177,7 +177,6 @@ func Test_scroll_CursorLineNr_update()
|
||||
call writefile(lines, filename)
|
||||
let buf = RunVimInTerminal('-S '.filename, #{rows: 5, cols: 50})
|
||||
call term_sendkeys(buf, "k")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_winline_rnu', {})
|
||||
|
||||
" clean up
|
||||
|
@@ -2567,6 +2567,9 @@ endfunc
|
||||
|
||||
func Test_state()
|
||||
CheckRunVimInTerminal
|
||||
let g:test_is_flaky = 1
|
||||
|
||||
let getstate = ":echo 'state: ' .. g:state .. '; mode: ' .. g:mode\<CR>"
|
||||
|
||||
let lines =<< trim END
|
||||
call setline(1, ['one', 'two', 'three'])
|
||||
@@ -2587,28 +2590,27 @@ func Test_state()
|
||||
|
||||
" Using a timer callback
|
||||
call term_sendkeys(buf, ":call RunTimer()\<CR>")
|
||||
call term_wait(buf, 50)
|
||||
let getstate = ":echo 'state: ' .. g:state .. '; mode: ' .. g:mode\<CR>"
|
||||
call TermWait(buf, 25)
|
||||
call term_sendkeys(buf, getstate)
|
||||
call WaitForAssert({-> assert_match('state: c; mode: n', term_getline(buf, 6))}, 1000)
|
||||
|
||||
" Halfway a mapping
|
||||
call term_sendkeys(buf, ":call RunTimer()\<CR>;")
|
||||
call term_wait(buf, 50)
|
||||
call TermWait(buf, 25)
|
||||
call term_sendkeys(buf, ";")
|
||||
call term_sendkeys(buf, getstate)
|
||||
call WaitForAssert({-> assert_match('state: mSc; mode: n', term_getline(buf, 6))}, 1000)
|
||||
|
||||
" Insert mode completion (bit slower on Mac)
|
||||
call term_sendkeys(buf, ":call RunTimer()\<CR>Got\<C-N>")
|
||||
call term_wait(buf, 200)
|
||||
call TermWait(buf, 25)
|
||||
call term_sendkeys(buf, "\<Esc>")
|
||||
call term_sendkeys(buf, getstate)
|
||||
call WaitForAssert({-> assert_match('state: aSc; mode: i', term_getline(buf, 6))}, 1000)
|
||||
|
||||
" Autocommand executing
|
||||
call term_sendkeys(buf, ":set filetype=foobar\<CR>")
|
||||
call term_wait(buf, 50)
|
||||
call TermWait(buf, 25)
|
||||
call term_sendkeys(buf, getstate)
|
||||
call WaitForAssert({-> assert_match('state: xS; mode: n', term_getline(buf, 6))}, 1000)
|
||||
|
||||
@@ -2616,7 +2618,7 @@ func Test_state()
|
||||
|
||||
" messages scrolled
|
||||
call term_sendkeys(buf, ":call RunTimer()\<CR>:echo \"one\\ntwo\\nthree\"\<CR>")
|
||||
call term_wait(buf, 50)
|
||||
call TermWait(buf, 25)
|
||||
call term_sendkeys(buf, "\<CR>")
|
||||
call term_sendkeys(buf, getstate)
|
||||
call WaitForAssert({-> assert_match('state: Scs; mode: r', term_getline(buf, 6))}, 1000)
|
||||
|
@@ -543,9 +543,9 @@ func Test_cursorline_after_yank()
|
||||
\ 'call setline(1, ["","1","2","3",""])',
|
||||
\ ], 'Xtest_cursorline_yank')
|
||||
let buf = RunVimInTerminal('-S Xtest_cursorline_yank', {'rows': 8})
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call term_sendkeys(buf, "Gy3k")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call term_sendkeys(buf, "jj")
|
||||
|
||||
call VerifyScreenDump(buf, 'Test_cursorline_yank_01', {})
|
||||
@@ -583,7 +583,7 @@ func Test_cursorline_with_visualmode()
|
||||
\ 'call setline(1, repeat(["abc"], 50))',
|
||||
\ ], 'Xtest_cursorline_with_visualmode')
|
||||
let buf = RunVimInTerminal('-S Xtest_cursorline_with_visualmode', {'rows': 12})
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call term_sendkeys(buf, "V\<C-f>kkkjk")
|
||||
|
||||
call VerifyScreenDump(buf, 'Test_cursorline_with_visualmode_01', {})
|
||||
@@ -593,6 +593,59 @@ func Test_cursorline_with_visualmode()
|
||||
call delete('Xtest_cursorline_with_visualmode')
|
||||
endfunc
|
||||
|
||||
func Test_wincolor()
|
||||
CheckScreendump
|
||||
" make sure the width is enough for the test
|
||||
set columns=80
|
||||
|
||||
let lines =<< trim END
|
||||
set cursorline cursorcolumn rnu
|
||||
call setline(1, ["","1111111111","22222222222","3 here 3","","the cat is out of the bag"])
|
||||
set wincolor=Pmenu
|
||||
hi CatLine guifg=green ctermfg=green
|
||||
hi Reverse gui=reverse cterm=reverse
|
||||
syn match CatLine /^the.*/
|
||||
call prop_type_add("foo", {"highlight": "Reverse", "combine": 1})
|
||||
call prop_add(6, 12, {"type": "foo", "end_col": 15})
|
||||
/here
|
||||
END
|
||||
call writefile(lines, 'Xtest_wincolor')
|
||||
let buf = RunVimInTerminal('-S Xtest_wincolor', {'rows': 8})
|
||||
call TermWait(buf)
|
||||
call term_sendkeys(buf, "2G5lvj")
|
||||
call TermWait(buf)
|
||||
|
||||
call VerifyScreenDump(buf, 'Test_wincolor_01', {})
|
||||
|
||||
" clean up
|
||||
call term_sendkeys(buf, "\<Esc>")
|
||||
call StopVimInTerminal(buf)
|
||||
call delete('Xtest_wincolor')
|
||||
endfunc
|
||||
|
||||
func Test_wincolor_listchars()
|
||||
CheckScreendump
|
||||
CheckFeature conceal
|
||||
|
||||
let lines =<< trim END
|
||||
call setline(1, ["one","\t\tsome random text enough long to show 'extends' and 'precedes' includingnbsps, preceding tabs and trailing spaces ","three"])
|
||||
set wincolor=Todo
|
||||
set nowrap cole=1 cocu+=n
|
||||
set list lcs=eol:$,tab:>-,space:.,trail:_,extends:>,precedes:<,conceal:*,nbsp:#
|
||||
call matchadd('Conceal', 'text')
|
||||
normal 2G5zl
|
||||
END
|
||||
call writefile(lines, 'Xtest_wincolorlcs')
|
||||
let buf = RunVimInTerminal('-S Xtest_wincolorlcs', {'rows': 8})
|
||||
|
||||
call VerifyScreenDump(buf, 'Test_wincolor_lcs', {})
|
||||
|
||||
" clean up
|
||||
call term_sendkeys(buf, "\<Esc>")
|
||||
call StopVimInTerminal(buf)
|
||||
call delete('Xtest_wincolorlcs')
|
||||
endfunc
|
||||
|
||||
func Test_cursorcolumn_insert_on_tab()
|
||||
CheckScreendump
|
||||
|
||||
@@ -665,7 +718,6 @@ func Test_colorcolumn()
|
||||
call writefile(lines, 'Xtest_colorcolumn')
|
||||
let buf = RunVimInTerminal('-S Xtest_colorcolumn', {'rows': 10})
|
||||
call term_sendkeys(buf, ":\<CR>")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_colorcolumn_1', {})
|
||||
|
||||
" clean up
|
||||
@@ -683,7 +735,6 @@ func Test_colorcolumn_bri()
|
||||
call writefile(lines, 'Xtest_colorcolumn_bri')
|
||||
let buf = RunVimInTerminal('-S Xtest_colorcolumn_bri', {'rows': 10,'columns': 40})
|
||||
call term_sendkeys(buf, ":set co=40 linebreak bri briopt=shift:2 cc=40,41,43\<CR>")
|
||||
call TermWait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_colorcolumn_2', {})
|
||||
|
||||
" clean up
|
||||
|
@@ -620,7 +620,7 @@ func Test_pum_with_folds_two_tabs()
|
||||
|
||||
call writefile(lines, 'Xpumscript')
|
||||
let buf = RunVimInTerminal('-S Xpumscript', #{rows: 10})
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
call term_sendkeys(buf, "a\<C-N>")
|
||||
call VerifyScreenDump(buf, 'Test_pum_with_folds_two_tabs', {})
|
||||
|
||||
@@ -645,9 +645,9 @@ func Test_pum_with_preview_win()
|
||||
|
||||
call writefile(lines, 'Xpreviewscript')
|
||||
let buf = RunVimInTerminal('-S Xpreviewscript', #{rows: 12})
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
call term_sendkeys(buf, "Gi\<C-X>\<C-O>")
|
||||
call term_wait(buf, 200)
|
||||
call TermWait(buf, 100)
|
||||
call term_sendkeys(buf, "\<C-N>")
|
||||
call VerifyScreenDump(buf, 'Test_pum_with_preview_win', {})
|
||||
|
||||
|
@@ -278,9 +278,9 @@ func Test_map_timeout()
|
||||
endfunc
|
||||
|
||||
func Test_map_timeout_with_timer_interrupt()
|
||||
if !has('job') || !has('timers')
|
||||
return
|
||||
endif
|
||||
CheckFeature job
|
||||
CheckFeature timers
|
||||
let g:test_is_flaky = 1
|
||||
|
||||
" Confirm the timer invoked in exit_cb of the job doesn't disturb mapped key
|
||||
" sequence.
|
||||
@@ -418,9 +418,9 @@ func Test_error_in_map_expr()
|
||||
|
||||
" GC must not run during map-expr processing, which can make Vim crash.
|
||||
call term_sendkeys(buf, '!')
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
call term_sendkeys(buf, "\<CR>")
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
call assert_equal('run', job_status(job))
|
||||
|
||||
call term_sendkeys(buf, ":qall!\<CR>")
|
||||
@@ -1226,7 +1226,7 @@ func Test_map_cmdkey_visual_mode()
|
||||
call feedkeys("v\<F4>", 'xt!')
|
||||
call assert_equal(['v', 1, 12], [mode(1), col('v'), col('.')])
|
||||
|
||||
" can invoke an opeartor, ending the visual mode
|
||||
" can invoke an operator, ending the visual mode
|
||||
let @a = ''
|
||||
call feedkeys("\<F5>", 'xt!')
|
||||
call assert_equal('n', mode(1))
|
||||
|
@@ -322,7 +322,7 @@ func OtherWindowCommon()
|
||||
END
|
||||
call writefile(lines, 'XscriptMatchCommon')
|
||||
let buf = RunVimInTerminal('-S XscriptMatchCommon', #{rows: 12})
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
return buf
|
||||
endfunc
|
||||
|
||||
@@ -373,7 +373,6 @@ func Test_match_in_linebreak()
|
||||
END
|
||||
call writefile(lines, 'XscriptMatchLinebreak')
|
||||
let buf = RunVimInTerminal('-S XscriptMatchLinebreak', #{rows: 10})
|
||||
call TermWait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_match_linebreak', {})
|
||||
|
||||
call StopVimInTerminal(buf)
|
||||
@@ -390,7 +389,6 @@ func Test_match_with_incsearch()
|
||||
END
|
||||
call writefile(lines, 'XmatchWithIncsearch')
|
||||
let buf = RunVimInTerminal('-S XmatchWithIncsearch', #{rows: 6})
|
||||
call TermWait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_match_with_incsearch_1', {})
|
||||
|
||||
call term_sendkeys(buf, ":s/0")
|
||||
@@ -431,7 +429,6 @@ func Test_match_tab_with_linebreak()
|
||||
END
|
||||
call writefile(lines, 'XscriptMatchTabLinebreak')
|
||||
let buf = RunVimInTerminal('-S XscriptMatchTabLinebreak', #{rows: 10})
|
||||
call TermWait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_match_tab_linebreak', {})
|
||||
|
||||
call StopVimInTerminal(buf)
|
||||
|
@@ -372,14 +372,14 @@ func Test_cursor_column_in_concealed_line_after_window_scroll()
|
||||
END
|
||||
call writefile(lines, 'Xcolesearch')
|
||||
let buf = RunVimInTerminal('Xcolesearch', {})
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
|
||||
" Jump to something that is beyond the bottom of the window,
|
||||
" so there's a scroll down.
|
||||
call term_sendkeys(buf, ":so %\<CR>")
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
call term_sendkeys(buf, "/expr\<CR>")
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
|
||||
" Are the concealed parts of the current line really hidden?
|
||||
let cursor_row = term_scrape(buf, '.')->map({_, e -> e.chars})->join('')
|
||||
@@ -409,7 +409,7 @@ func Test_cursor_column_in_concealed_line_after_leftcol_change()
|
||||
" Horizontal scroll would center the cursor in the screen line, but conceal
|
||||
" makes it go to screen column 1.
|
||||
call term_sendkeys(buf, "$")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
|
||||
" Are the concealed parts of the current line really hidden?
|
||||
call WaitForAssert({-> assert_equal('c', term_getline(buf, '.'))})
|
||||
|
@@ -112,7 +112,7 @@ func Test_mode_message_at_leaving_insert_by_ctrl_c()
|
||||
|
||||
let rows = 10
|
||||
let buf = term_start([GetVimProg(), '--clean', '-S', testfile], {'term_rows': rows})
|
||||
call term_wait(buf, 200)
|
||||
call TermWait(buf, 100)
|
||||
call assert_equal('run', job_status(term_getjob(buf)))
|
||||
|
||||
call term_sendkeys(buf, "i")
|
||||
@@ -140,7 +140,7 @@ func Test_mode_message_at_leaving_insert_with_esc_mapped()
|
||||
|
||||
let rows = 10
|
||||
let buf = term_start([GetVimProg(), '--clean', '-S', testfile], {'term_rows': rows})
|
||||
call term_wait(buf, 200)
|
||||
call WaitForAssert({-> assert_match('0,0-1\s*All$', term_getline(buf, rows - 1))})
|
||||
call assert_equal('run', job_status(term_getjob(buf)))
|
||||
|
||||
call term_sendkeys(buf, "i")
|
||||
|
@@ -280,7 +280,7 @@ func Test_relativenumber_colors()
|
||||
|
||||
" Check that the balloon shows up after a mouse move
|
||||
let buf = RunVimInTerminal('-S XTest_relnr', {'rows': 10, 'cols': 50})
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
" Default colors
|
||||
call VerifyScreenDump(buf, 'Test_relnr_colors_1', {})
|
||||
|
||||
|
@@ -676,7 +676,9 @@ endfunc
|
||||
|
||||
func Test_popup_and_window_resize()
|
||||
CheckFeature terminal
|
||||
CheckFeature quickfix
|
||||
CheckNotGui
|
||||
let g:test_is_flaky = 1
|
||||
|
||||
let h = winheight(0)
|
||||
if h < 15
|
||||
@@ -691,11 +693,11 @@ func Test_popup_and_window_resize()
|
||||
|
||||
call term_sendkeys(buf, "Gi\<c-x>")
|
||||
call term_sendkeys(buf, "\<c-v>")
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
" popup first entry "!" must be at the top
|
||||
call WaitForAssert({-> assert_match('^!\s*$', term_getline(buf, 1))})
|
||||
exe 'resize +' . (h - 1)
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
redraw!
|
||||
" popup shifted down, first line is now empty
|
||||
call WaitForAssert({-> assert_equal('', term_getline(buf, 1))})
|
||||
@@ -759,11 +761,11 @@ func Test_popup_and_previewwindow_dump()
|
||||
let buf = RunVimInTerminal('-S Xscript', {})
|
||||
|
||||
" wait for the script to finish
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
|
||||
" Test that popup and previewwindow do not overlap.
|
||||
call term_sendkeys(buf, "o")
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
call term_sendkeys(buf, "\<C-X>\<C-N>")
|
||||
call VerifyScreenDump(buf, 'Test_popup_and_previewwindow_01', {})
|
||||
|
||||
@@ -1208,7 +1210,6 @@ func Test_pum_rightleft()
|
||||
let buf = RunVimInTerminal('--cmd "set rightleft" Xtest1', {})
|
||||
call term_wait(buf)
|
||||
call term_sendkeys(buf, "Go\<C-P>")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_pum_rightleft_01', {'rows': 8})
|
||||
call term_sendkeys(buf, "\<C-P>\<C-Y>")
|
||||
call term_wait(buf)
|
||||
@@ -1250,7 +1251,6 @@ func Test_pum_scrollbar()
|
||||
let buf = RunVimInTerminal('--cmd "set pumheight=2" Xtest1', {})
|
||||
call term_wait(buf)
|
||||
call term_sendkeys(buf, "Go\<C-P>\<C-P>\<C-P>")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_pum_scrollbar_01', {'rows': 7})
|
||||
call term_sendkeys(buf, "\<C-E>\<Esc>dd")
|
||||
call term_wait(buf)
|
||||
@@ -1259,7 +1259,6 @@ func Test_pum_scrollbar()
|
||||
call term_sendkeys(buf, ":set rightleft\<CR>")
|
||||
call term_wait(buf)
|
||||
call term_sendkeys(buf, "Go\<C-P>\<C-P>\<C-P>")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_pum_scrollbar_02', {'rows': 7})
|
||||
endif
|
||||
|
||||
|
@@ -584,7 +584,7 @@ func Test_profile_typed_func()
|
||||
\ .. "endfunc\<CR>")
|
||||
call term_sendkeys(buf, ":profile func DoSomething\<CR>")
|
||||
call term_sendkeys(buf, ":call DoSomething()\<CR>")
|
||||
call term_wait(buf, 200)
|
||||
call TermWait(buf, 100)
|
||||
call StopVimInTerminal(buf)
|
||||
let lines = readfile('XprofileTypedFunc')
|
||||
call assert_equal("FUNCTION DoSomething()", lines[0])
|
||||
|
@@ -131,6 +131,7 @@ func Do_test_quotestar_for_x11()
|
||||
endfunc
|
||||
|
||||
func Test_quotestar()
|
||||
let g:test_is_flaky = 1
|
||||
let skipped = ''
|
||||
|
||||
let quotestar_saved = @*
|
||||
|
@@ -5,6 +5,7 @@ CheckFeature reltime
|
||||
CheckFeature float
|
||||
|
||||
func Test_reltime()
|
||||
let g:test_is_flaky = 1
|
||||
let now = reltime()
|
||||
sleep 10m
|
||||
let later = reltime()
|
||||
|
@@ -815,12 +815,12 @@ func Test_search_cmdline_incsearch_highlight_attr()
|
||||
|
||||
call WaitForAssert({-> assert_equal(lines, [term_getline(buf, 1), term_getline(buf, 2)])})
|
||||
" wait for vim to complete initialization
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
|
||||
" Get attr of normal(a0), incsearch(a1), hlsearch(a2) highlight
|
||||
call term_sendkeys(buf, ":set incsearch hlsearch\<cr>")
|
||||
call term_sendkeys(buf, '/b')
|
||||
call term_wait(buf, 200)
|
||||
call TermWait(buf, 100)
|
||||
let screen_line1 = term_scrape(buf, 1)
|
||||
call assert_true(len(screen_line1) > 2)
|
||||
" a0: attr_normal
|
||||
@@ -836,7 +836,7 @@ func Test_search_cmdline_incsearch_highlight_attr()
|
||||
|
||||
" Test incremental highlight search
|
||||
call term_sendkeys(buf, "/vim")
|
||||
call term_wait(buf, 200)
|
||||
call TermWait(buf, 100)
|
||||
" Buffer:
|
||||
" abb vim vim vi
|
||||
" vimvivim
|
||||
@@ -848,7 +848,7 @@ func Test_search_cmdline_incsearch_highlight_attr()
|
||||
|
||||
" Test <C-g>
|
||||
call term_sendkeys(buf, "\<C-g>\<C-g>")
|
||||
call term_wait(buf, 200)
|
||||
call TermWait(buf, 100)
|
||||
let attr_line1 = [a0,a0,a0,a0,a2,a2,a2,a0,a2,a2,a2,a0,a0,a0]
|
||||
let attr_line2 = [a1,a1,a1,a0,a0,a2,a2,a2]
|
||||
call assert_equal(attr_line1, map(term_scrape(buf, 1)[:len(attr_line1)-1], 'v:val.attr'))
|
||||
@@ -856,7 +856,7 @@ func Test_search_cmdline_incsearch_highlight_attr()
|
||||
|
||||
" Test <C-t>
|
||||
call term_sendkeys(buf, "\<C-t>")
|
||||
call term_wait(buf, 200)
|
||||
call TermWait(buf, 100)
|
||||
let attr_line1 = [a0,a0,a0,a0,a2,a2,a2,a0,a1,a1,a1,a0,a0,a0]
|
||||
let attr_line2 = [a2,a2,a2,a0,a0,a2,a2,a2]
|
||||
call assert_equal(attr_line1, map(term_scrape(buf, 1)[:len(attr_line1)-1], 'v:val.attr'))
|
||||
@@ -864,7 +864,7 @@ func Test_search_cmdline_incsearch_highlight_attr()
|
||||
|
||||
" Type Enter and a1(incsearch highlight) should become a2(hlsearch highlight)
|
||||
call term_sendkeys(buf, "\<cr>")
|
||||
call term_wait(buf, 200)
|
||||
call TermWait(buf, 100)
|
||||
let attr_line1 = [a0,a0,a0,a0,a2,a2,a2,a0,a2,a2,a2,a0,a0,a0]
|
||||
let attr_line2 = [a2,a2,a2,a0,a0,a2,a2,a2]
|
||||
call assert_equal(attr_line1, map(term_scrape(buf, 1)[:len(attr_line1)-1], 'v:val.attr'))
|
||||
@@ -874,7 +874,7 @@ func Test_search_cmdline_incsearch_highlight_attr()
|
||||
call term_sendkeys(buf, ":1\<cr>")
|
||||
call term_sendkeys(buf, ":set nohlsearch\<cr>")
|
||||
call term_sendkeys(buf, "/vim")
|
||||
call term_wait(buf, 200)
|
||||
call TermWait(buf, 100)
|
||||
let attr_line1 = [a0,a0,a0,a0,a1,a1,a1,a0,a0,a0,a0,a0,a0,a0]
|
||||
let attr_line2 = [a0,a0,a0,a0,a0,a0,a0,a0]
|
||||
call assert_equal(attr_line1, map(term_scrape(buf, 1)[:len(attr_line1)-1], 'v:val.attr'))
|
||||
|
@@ -333,15 +333,12 @@ func Test_search_stat_foldopen()
|
||||
call writefile(lines, 'Xsearchstat1')
|
||||
|
||||
let buf = RunVimInTerminal('-S Xsearchstat1', #{rows: 10})
|
||||
call TermWait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_searchstat_3', {})
|
||||
|
||||
call term_sendkeys(buf, "n")
|
||||
call TermWait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_searchstat_3', {})
|
||||
|
||||
call term_sendkeys(buf, "n")
|
||||
call TermWait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_searchstat_3', {})
|
||||
|
||||
call StopVimInTerminal(buf)
|
||||
@@ -364,12 +361,10 @@ func! Test_search_stat_screendump()
|
||||
END
|
||||
call writefile(lines, 'Xsearchstat')
|
||||
let buf = RunVimInTerminal('-S Xsearchstat', #{rows: 10})
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_searchstat_1', {})
|
||||
|
||||
call term_sendkeys(buf, ":nnoremap <silent> n n\<cr>")
|
||||
call term_sendkeys(buf, "gg0n")
|
||||
call term_wait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_searchstat_2', {})
|
||||
|
||||
call StopVimInTerminal(buf)
|
||||
@@ -388,11 +383,9 @@ func Test_search_stat_then_gd()
|
||||
|
||||
let buf = RunVimInTerminal('-S Xsearchstatgd', #{rows: 10})
|
||||
call term_sendkeys(buf, "/dog\<CR>")
|
||||
call TermWait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_searchstatgd_1', {})
|
||||
|
||||
call term_sendkeys(buf, "G0gD")
|
||||
call TermWait(buf)
|
||||
call VerifyScreenDump(buf, 'Test_searchstatgd_2', {})
|
||||
|
||||
call StopVimInTerminal(buf)
|
||||
|
@@ -960,9 +960,9 @@ func Test_missing_vimrc()
|
||||
let cmd = GetVimCommandCleanTerm() . ' -u Xvimrc_missing -S Xafter'
|
||||
let buf = term_start(cmd, {'term_rows' : 10})
|
||||
call WaitForAssert({-> assert_equal("running", term_getstatus(buf))})
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call term_sendkeys(buf, "\n:")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call WaitForAssert({-> assert_match(':', term_getline(buf, 10))})
|
||||
call StopVimInTerminal(buf)
|
||||
call assert_equal([], readfile('Xtestout'))
|
||||
|
@@ -73,7 +73,7 @@ func Test_detect_ambiwidth()
|
||||
\ 'redraw',
|
||||
\ ], 'Xscript')
|
||||
let buf = RunVimInTerminal('-S Xscript', #{keep_t_u7: 1})
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call term_sendkeys(buf, "S\<C-R>=&ambiwidth\<CR>\<Esc>")
|
||||
call WaitForAssert({-> assert_match('single', term_getline(buf, 1))})
|
||||
|
||||
|
@@ -53,7 +53,7 @@ func Test_suspend()
|
||||
|
||||
" Quit gracefully to dump coverage information.
|
||||
call term_sendkeys(buf, ":qall!\<CR>")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
" Wait until Vim actually exited and shell shows a prompt
|
||||
call WaitForAssert({-> assert_match('[$#] $', term_getline(buf, '.'))})
|
||||
call StopShellInTerminal(buf)
|
||||
|
@@ -374,14 +374,14 @@ func Test_swap_prompt_splitwin()
|
||||
call term_sendkeys(buf, ":set noruler\n")
|
||||
|
||||
call term_sendkeys(buf, ":split Xfile1\n")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call WaitForAssert({-> assert_match('^\[O\]pen Read-Only, (E)dit anyway, (R)ecover, (Q)uit, (A)bort: $', term_getline(buf, 20))})
|
||||
call term_sendkeys(buf, "q")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call term_sendkeys(buf, ":\<CR>")
|
||||
call WaitForAssert({-> assert_match('^:$', term_getline(buf, 20))})
|
||||
call term_sendkeys(buf, ":echomsg winnr('$')\<CR>")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call WaitForAssert({-> assert_match('^1$', term_getline(buf, 20))})
|
||||
call StopVimInTerminal(buf)
|
||||
|
||||
|
@@ -671,7 +671,7 @@ func Test_tselect()
|
||||
call writefile(lines, 'XTest_tselect')
|
||||
let buf = RunVimInTerminal('-S XTest_tselect', {'rows': 10, 'cols': 50})
|
||||
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
call term_sendkeys(buf, ":tselect main\<CR>2\<CR>")
|
||||
call VerifyScreenDump(buf, 'Test_tselect_1', {})
|
||||
|
||||
|
@@ -21,6 +21,7 @@ func MyHandlerWithLists(lists, timer)
|
||||
endfunc
|
||||
|
||||
func Test_timer_oneshot()
|
||||
let g:test_is_flaky = 1
|
||||
let g:val = 0
|
||||
let timer = timer_start(50, 'MyHandler')
|
||||
let slept = WaitFor('g:val == 1')
|
||||
@@ -33,6 +34,7 @@ func Test_timer_oneshot()
|
||||
endfunc
|
||||
|
||||
func Test_timer_repeat_three()
|
||||
let g:test_is_flaky = 1
|
||||
let g:val = 0
|
||||
let timer = timer_start(50, 'MyHandler', {'repeat': 3})
|
||||
let slept = WaitFor('g:val == 3')
|
||||
@@ -45,6 +47,7 @@ func Test_timer_repeat_three()
|
||||
endfunc
|
||||
|
||||
func Test_timer_repeat_many()
|
||||
let g:test_is_flaky = 1
|
||||
let g:val = 0
|
||||
let timer = timer_start(50, 'MyHandler', {'repeat': -1})
|
||||
sleep 200m
|
||||
@@ -53,6 +56,7 @@ func Test_timer_repeat_many()
|
||||
endfunc
|
||||
|
||||
func Test_timer_with_partial_callback()
|
||||
let g:test_is_flaky = 1
|
||||
let g:val = 0
|
||||
let meow = {'one': 1}
|
||||
function meow.bite(...)
|
||||
@@ -114,6 +118,7 @@ func Test_timer_stopall()
|
||||
endfunc
|
||||
|
||||
func Test_timer_paused()
|
||||
let g:test_is_flaky = 1
|
||||
let g:val = 0
|
||||
|
||||
let id = timer_start(50, 'MyHandler')
|
||||
@@ -168,6 +173,7 @@ func StopTimer2(timer)
|
||||
endfunc
|
||||
|
||||
func Test_timer_stop_in_callback()
|
||||
let g:test_is_flaky = 1
|
||||
call assert_equal(0, len(timer_info()))
|
||||
let g:timer1 = timer_start(10, 'StopTimer1')
|
||||
let slept = 0
|
||||
@@ -187,6 +193,7 @@ func StopTimerAll(timer)
|
||||
endfunc
|
||||
|
||||
func Test_timer_stop_all_in_callback()
|
||||
let g:test_is_flaky = 1
|
||||
call assert_equal(0, len(timer_info()))
|
||||
call timer_start(10, 'StopTimerAll')
|
||||
call assert_equal(1, len(timer_info()))
|
||||
@@ -386,9 +393,9 @@ func Test_timer_error_in_timer_callback()
|
||||
call WaitForAssert({-> assert_notequal('', term_getline(buf, 8))})
|
||||
|
||||
" GC must not run during timer callback, which can make Vim crash.
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
call term_sendkeys(buf, "\<CR>")
|
||||
call term_wait(buf, 100)
|
||||
call TermWait(buf, 50)
|
||||
call assert_equal('run', job_status(job))
|
||||
|
||||
call term_sendkeys(buf, ":qall!\<CR>")
|
||||
|
@@ -7249,30 +7249,30 @@ func Test_deep_nest()
|
||||
|
||||
" Deep nesting of if ... endif
|
||||
call term_sendkeys(buf, ":call Test1()\n")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call WaitForAssert({-> assert_match('^E579:', term_getline(buf, 5))})
|
||||
|
||||
" Deep nesting of for ... endfor
|
||||
call term_sendkeys(buf, ":call Test2()\n")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call WaitForAssert({-> assert_match('^E585:', term_getline(buf, 5))})
|
||||
|
||||
" Deep nesting of while ... endwhile
|
||||
call term_sendkeys(buf, ":call Test3()\n")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call WaitForAssert({-> assert_match('^E585:', term_getline(buf, 5))})
|
||||
|
||||
" Deep nesting of try ... endtry
|
||||
call term_sendkeys(buf, ":call Test4()\n")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call WaitForAssert({-> assert_match('^E601:', term_getline(buf, 5))})
|
||||
|
||||
" Deep nesting of function ... endfunction
|
||||
call term_sendkeys(buf, ":call Test5()\n")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
call WaitForAssert({-> assert_match('^E1058:', term_getline(buf, 4))})
|
||||
call term_sendkeys(buf, "\<C-C>\n")
|
||||
call term_wait(buf)
|
||||
call TermWait(buf)
|
||||
|
||||
"let l = ''
|
||||
"for i in range(1, 6)
|
||||
|
Reference in New Issue
Block a user