# HG changeset patch # User Bram Moolenaar # Date 1634386504 -7200 # Node ID a5a772dace5b9c69783daa3be95c7f6efa75cc5d # Parent c506b33fff841d2711f2ffad3876328c9cd1120b patch 8.2.3518: Test_xrestore sometimes fails Commit: https://github.com/vim/vim/commit/f08b0eb8691ff09f98bc4beef986ece1c521655f Author: Bram Moolenaar Date: Sat Oct 16 13:00:14 2021 +0100 patch 8.2.3518: Test_xrestore sometimes fails 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. diff --git a/src/testdir/runtest.vim b/src/testdir/runtest.vim --- 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 7faa4551d17afe35cbf889618879b2b35d4f0326..3893b79a651d53e82cf76225cff2a5fc01afcfce GIT binary patch literal 86111 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 diff --git a/src/testdir/test_channel.vim b/src/testdir/test_channel.vim --- 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 --- 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 --- 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 --- 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\" diff --git a/src/testdir/test_gui.vim b/src/testdir/test_gui.vim --- 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 --- 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\", '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("\", 'xt!') call assert_equal('n', mode(1)) diff --git a/src/testdir/test_paste.vim b/src/testdir/test_paste.vim --- 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 --- 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 --- 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 --- 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 --- 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 --- 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_las 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 --- 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 --- 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,