summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2021-10-16 13:00:14 +0100
committerBram Moolenaar <Bram@vim.org>2021-10-16 13:00:14 +0100
commitf08b0eb8691ff09f98bc4beef986ece1c521655f (patch)
tree46dcc3bc1012a1dc5960f509ccb08ef23c5735cf
parentdb3b44640d69ab27270691a3cab8d83cc93a0861 (diff)
downloadvim-git-f08b0eb8691ff09f98bc4beef986ece1c521655f.tar.gz
patch 8.2.3518: Test_xrestore sometimes failsv8.2.3518
Problem: Test_xrestore sometimes fails. Solution: Mark the test as flayky. Move marking test as flaky to the test instead of listing them in runtest.
-rw-r--r--src/testdir/runtest.vim39
-rw-r--r--src/testdir/test_autocmd.vim3
-rw-r--r--src/testdir/test_channel.vim7
-rw-r--r--src/testdir/test_clientserver.vim1
-rw-r--r--src/testdir/test_diffmode.vim1
-rw-r--r--src/testdir/test_functions.vim1
-rw-r--r--src/testdir/test_gui.vim1
-rw-r--r--src/testdir/test_mapping.vim3
-rw-r--r--src/testdir/test_paste.vim2
-rw-r--r--src/testdir/test_popup.vim1
-rw-r--r--src/testdir/test_quotestar.vim1
-rw-r--r--src/testdir/test_reltime.vim1
-rw-r--r--src/testdir/test_terminal.vim4
-rw-r--r--src/testdir/test_terminal2.vim2
-rw-r--r--src/testdir/test_timers.vim8
-rw-r--r--src/version.c2
16 files changed, 38 insertions, 39 deletions
diff --git a/src/testdir/runtest.vim b/src/testdir/runtest.vim
index 2ef0f554f..cc45393da 100644
--- a/src/testdir/runtest.vim
+++ b/src/testdir/runtest.vim
@@ -404,42 +404,6 @@ else
endtry
endif
-" Names of flaky tests.
-let s:flaky_tests = [
- \ 'Test_BufWrite_lockmarks()',
- \ 'Test_autocmd_SafeState()',
- \ 'Test_bufunload_all()',
- \ 'Test_client_server()',
- \ 'Test_close_and_exit_cb()',
- \ 'Test_close_output_buffer()',
- \ 'Test_collapse_buffers()',
- \ 'Test_cwd()',
- \ 'Test_diff_screen()',
- \ 'Test_exit_callback_interval()',
- \ 'Test_map_timeout_with_timer_interrupt()',
- \ 'Test_out_cb()',
- \ 'Test_pipe_through_sort_all()',
- \ 'Test_pipe_through_sort_some()',
- \ 'Test_popup_and_window_resize()',
- \ 'Test_quoteplus()',
- \ 'Test_quotestar()',
- \ 'Test_reltime()',
- \ 'Test_state()',
- \ 'Test_terminal_composing_unicode()',
- \ 'Test_terminal_does_not_truncate_last_newlines()',
- \ 'Test_terminal_no_cmd()',
- \ 'Test_terminal_noblock()',
- \ 'Test_terminal_redir_file()',
- \ 'Test_termwinscroll()',
- \ '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()',
- \ ]
-
" Locate Test_ functions and execute them.
redir @q
silent function /^Test_
@@ -491,8 +455,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)
diff --git a/src/testdir/test_autocmd.vim b/src/testdir/test_autocmd.vim
index 7faa4551d..3893b79a6 100644
--- a/src/testdir/test_autocmd.vim
+++ b/src/testdir/test_autocmd.vim
@@ -1490,6 +1490,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')"
@@ -2378,6 +2379,7 @@ endfunc
func Test_autocmd_SafeState()
CheckRunVimInTerminal
+ let g:test_is_flaky = 1
let lines =<< trim END
let g:safe = 0
@@ -2458,6 +2460,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'])
diff --git a/src/testdir/test_channel.vim b/src/testdir/test_channel.vim
index fbe6a8428..f8cdef4fc 100644
--- a/src/testdir/test_channel.vim
+++ b/src/testdir/test_channel.vim
@@ -795,6 +795,7 @@ func Test_pipe_to_buffer_name_nomsg()
endfunc
func Test_close_output_buffer()
+ let g:test_is_flaky = 1
enew!
let test_lines = ['one', 'two']
call setline(1, test_lines)
@@ -935,6 +936,7 @@ endfunc
func Run_pipe_through_sort(all, use_buffer)
CheckExecutable sort
+ let g:test_is_flaky = 1
let options = {'out_io': 'buffer', 'out_name': 'sortout'}
if a:use_buffer
@@ -1206,6 +1208,7 @@ func Test_reuse_channel()
endfunc
func Test_out_cb()
+ let g:test_is_flaky = 1
let dict = {'thisis': 'dict: '}
func dict.outHandler(chan, msg) dict
if type(a:msg) == v:t_string
@@ -1333,6 +1336,7 @@ func Test_out_cb_lambda()
endfunc
func Test_close_and_exit_cb()
+ let g:test_is_flaky = 1
let g:retdict = {'ret': {}}
func g:retdict.close_cb(ch) dict
let self.ret['close_cb'] = a:ch->ch_getjob()->job_status()
@@ -1560,6 +1564,7 @@ endfunction
func Test_exit_callback_interval()
CheckFunction reltimefloat
+ let g:test_is_flaky = 1
let g:exit_cb_val = {'start': reltime(), 'end': 0, 'process': 0}
let job = [s:python, '-c', 'import time;time.sleep(0.5)']->job_start({'exit_cb': 'MyExitTimeCb'})
@@ -1742,6 +1747,7 @@ func Test_using_freed_memory()
endfunc
func Test_collapse_buffers()
+ let g:test_is_flaky = 1
CheckExecutable cat
sp test_channel.vim
@@ -1884,6 +1890,7 @@ func Test_env()
endfunc
func Test_cwd()
+ let g:test_is_flaky = 1
let g:envstr = ''
if has('win32')
let expect = $TEMP
diff --git a/src/testdir/test_clientserver.vim b/src/testdir/test_clientserver.vim
index a088e178f..03d201ddf 100644
--- a/src/testdir/test_clientserver.vim
+++ b/src/testdir/test_clientserver.vim
@@ -26,6 +26,7 @@ func Check_X11_Connection()
endfunc
func Test_client_server()
+ let g:test_is_flaky = 1
let cmd = GetVimCommand()
if cmd == ''
throw 'GetVimCommand() failed'
diff --git a/src/testdir/test_diffmode.vim b/src/testdir/test_diffmode.vim
index 268c3e9b5..08ec71b91 100644
--- a/src/testdir/test_diffmode.vim
+++ b/src/testdir/test_diffmode.vim
@@ -845,6 +845,7 @@ func VerifyInternal(buf, dumpfile, extra)
endfunc
func Test_diff_screen()
+ let g:test_is_flaky = 1
CheckScreendump
CheckFeature menu
diff --git a/src/testdir/test_functions.vim b/src/testdir/test_functions.vim
index d060ac418..7dd1894fa 100644
--- a/src/testdir/test_functions.vim
+++ b/src/testdir/test_functions.vim
@@ -2286,6 +2286,7 @@ endfunc
func Test_state()
CheckRunVimInTerminal
+ let g:test_is_flaky = 1
let getstate = ":echo 'state: ' .. g:state .. '; mode: ' .. g:mode\<CR>"
diff --git a/src/testdir/test_gui.vim b/src/testdir/test_gui.vim
index c01151cc3..6b849c747 100644
--- a/src/testdir/test_gui.vim
+++ b/src/testdir/test_gui.vim
@@ -120,6 +120,7 @@ func Test_getwinpos()
endfunc
func Test_quoteplus()
+ let g:test_is_flaky = 1
let skipped = ''
if !g:x11_based_gui
diff --git a/src/testdir/test_mapping.vim b/src/testdir/test_mapping.vim
index a447ba32f..d2b9f37d1 100644
--- a/src/testdir/test_mapping.vim
+++ b/src/testdir/test_mapping.vim
@@ -289,6 +289,7 @@ endfunc
func Test_map_timeout_with_timer_interrupt()
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.
@@ -1155,7 +1156,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))
diff --git a/src/testdir/test_paste.vim b/src/testdir/test_paste.vim
index ef35cec80..c94fe7c35 100644
--- a/src/testdir/test_paste.vim
+++ b/src/testdir/test_paste.vim
@@ -136,6 +136,8 @@ endfunc
func Test_xrestore()
CheckFeature xterm_clipboard
+ let g:test_is_flaky = 1
+
let display = $DISPLAY
new
call CheckCopyPaste()
diff --git a/src/testdir/test_popup.vim b/src/testdir/test_popup.vim
index 0799df548..2f29163ed 100644
--- a/src/testdir/test_popup.vim
+++ b/src/testdir/test_popup.vim
@@ -665,6 +665,7 @@ func Test_popup_and_window_resize()
CheckFeature terminal
CheckFeature quickfix
CheckNotGui
+ let g:test_is_flaky = 1
let h = winheight(0)
if h < 15
diff --git a/src/testdir/test_quotestar.vim b/src/testdir/test_quotestar.vim
index 6b8aebfff..b669019d8 100644
--- a/src/testdir/test_quotestar.vim
+++ b/src/testdir/test_quotestar.vim
@@ -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 = @*
diff --git a/src/testdir/test_reltime.vim b/src/testdir/test_reltime.vim
index c76d7a168..2f2e7aed7 100644
--- a/src/testdir/test_reltime.vim
+++ b/src/testdir/test_reltime.vim
@@ -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()
diff --git a/src/testdir/test_terminal.vim b/src/testdir/test_terminal.vim
index 3944294e3..eb5924a30 100644
--- a/src/testdir/test_terminal.vim
+++ b/src/testdir/test_terminal.vim
@@ -698,6 +698,7 @@ func Test_terminal_list_args()
endfunction
func Test_terminal_noblock()
+ let g:test_is_flaky = 1
let buf = term_start(&shell)
let wait_time = 5000
let letters = 'abcdefghijklmnopqrstuvwxyz'
@@ -805,6 +806,7 @@ func Test_terminal_duplicate_eof_arg()
endfunc
func Test_terminal_no_cmd()
+ let g:test_is_flaky = 1
let buf = term_start('NONE', {})
call assert_notequal(0, buf)
@@ -855,6 +857,7 @@ func Test_terminal_wrong_options()
endfunc
func Test_terminal_redir_file()
+ let g:test_is_flaky = 1
let cmd = Get_cat_123_cmd()
let buf = term_start(cmd, {'out_io': 'file', 'out_name': 'Xfile'})
call TermWait(buf)
@@ -946,6 +949,7 @@ func Test_terminal_wqall()
endfunc
func Test_terminal_composing_unicode()
+ let g:test_is_flaky = 1
let save_enc = &encoding
set encoding=utf-8
diff --git a/src/testdir/test_terminal2.vim b/src/testdir/test_terminal2.vim
index 0f8dcb672..68f9ad868 100644
--- a/src/testdir/test_terminal2.vim
+++ b/src/testdir/test_terminal2.vim
@@ -217,6 +217,7 @@ func Test_termwinscroll()
CheckUnix
" TODO: Somehow this test sometimes hangs in the GUI
CheckNotGui
+ let g:test_is_flaky = 1
" Let the terminal output more than 'termwinscroll' lines, some at the start
" will be dropped.
@@ -412,6 +413,7 @@ func Test_terminal_does_not_truncate_last_newlines()
if has('conpty')
throw 'Skipped: fail on ConPTY'
endif
+ let g:test_is_flaky = 1
let contents = [
\ [ 'One', '', 'X' ],
\ [ 'Two', '', '' ],
diff --git a/src/testdir/test_timers.vim b/src/testdir/test_timers.vim
index caeeed6e5..865a03b6d 100644
--- a/src/testdir/test_timers.vim
+++ b/src/testdir/test_timers.vim
@@ -16,6 +16,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')
@@ -34,6 +35,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')
@@ -51,6 +53,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
@@ -64,6 +67,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(...)
@@ -127,6 +131,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')
@@ -186,6 +191,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
@@ -205,6 +211,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()))
@@ -471,4 +478,5 @@ func Test_timer_outputting_message()
call delete('XTest_timermessage')
endfunc
+
" vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/version.c b/src/version.c
index d142759e5..1464dc22d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -758,6 +758,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 3518,
+/**/
3517,
/**/
3516,