changeset 17716:50b3b9c13ab8 v8.1.1855

patch 8.1.1855: another failing timer test commit https://github.com/vim/vim/commit/9a2fddcf04192a643dc97601d689c27f5bc5184f Author: Bram Moolenaar <Bram@vim.org> Date: Fri Aug 16 11:26:06 2019 +0200 patch 8.1.1855: another failing timer test Problem: Another failing timer test. Solution: Assert that timers are finished by the end of the test. Rename test functions to make them easier to find.
author Bram Moolenaar <Bram@vim.org>
date Fri, 16 Aug 2019 11:30:03 +0200
parents 4c7b01e6b932
children e3882234b527
files src/testdir/runtest.vim src/testdir/test_timers.vim src/version.c
diffstat 3 files changed, 28 insertions(+), 24 deletions(-) [+]
line wrap: on
line diff
--- a/src/testdir/runtest.vim
+++ b/src/testdir/runtest.vim
@@ -323,20 +323,15 @@ let s:flaky_tests = [
       \ 'Test_exit_callback()',
       \ 'Test_exit_callback_interval()',
       \ 'Test_nb_basic()',
-      \ 'Test_oneshot()',
       \ 'Test_open_delay()',
       \ 'Test_out_cb()',
-      \ 'Test_paused()',
       \ 'Test_pipe_through_sort_all()',
       \ 'Test_pipe_through_sort_some()',
       \ 'Test_quoteplus()',
       \ 'Test_quotestar()',
       \ 'Test_raw_one_time_callback()',
       \ 'Test_reltime()',
-      \ 'Test_repeat_many()',
-      \ 'Test_repeat_three()',
       \ 'Test_server_crash()',
-      \ 'Test_stop_all_in_callback()',
       \ 'Test_terminal_ansicolors_default()',
       \ 'Test_terminal_ansicolors_func()',
       \ 'Test_terminal_ansicolors_global()',
@@ -359,9 +354,15 @@ let s:flaky_tests = [
       \ 'Test_terminal_wall()',
       \ 'Test_terminal_wipe_buffer()',
       \ 'Test_terminal_wqall()',
+      \ '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_two_channels()',
       \ 'Test_unlet_handle()',
-      \ 'Test_with_partial_callback()',
+      \ 'Test_timer_with_partial_callback()',
       \ 'Test_zero_reply()',
       \ 'Test_zz1_terminal_in_gui()',
       \ ]
--- a/src/testdir/test_timers.vim
+++ b/src/testdir/test_timers.vim
@@ -14,7 +14,7 @@ func MyHandlerWithLists(lists, timer)
   let x = string(a:lists)
 endfunc
 
-func Test_oneshot()
+func Test_timer_oneshot()
   let g:val = 0
   let timer = timer_start(50, 'MyHandler')
   let slept = WaitFor('g:val == 1')
@@ -26,7 +26,7 @@ func Test_oneshot()
   endif
 endfunc
 
-func Test_repeat_three()
+func Test_timer_repeat_three()
   let g:val = 0
   let timer = timer_start(50, 'MyHandler', {'repeat': 3})
   let slept = WaitFor('g:val == 3')
@@ -38,7 +38,7 @@ func Test_repeat_three()
   endif
 endfunc
 
-func Test_repeat_many()
+func Test_timer_repeat_many()
   let g:val = 0
   let timer = timer_start(50, 'MyHandler', {'repeat': -1})
   sleep 200m
@@ -46,7 +46,7 @@ func Test_repeat_many()
   call assert_inrange(2, 5, g:val)
 endfunc
 
-func Test_with_partial_callback()
+func Test_timer_with_partial_callback()
   let g:val = 0
   let meow = {'one': 1}
   function meow.bite(...)
@@ -63,13 +63,13 @@ func Test_with_partial_callback()
   endif
 endfunc
 
-func Test_retain_partial()
+func Test_timer_retain_partial()
   call timer_start(50, function('MyHandlerWithLists', [['a']]))
   call test_garbagecollect_now()
   sleep 100m
 endfunc
 
-func Test_info()
+func Test_timer_info()
   let id = timer_start(1000, 'MyHandler')
   let info = timer_info(id)
   call assert_equal(id, info[0]['id'])
@@ -91,7 +91,7 @@ func Test_info()
   call assert_equal([], timer_info(id))
 endfunc
 
-func Test_stopall()
+func Test_timer_stopall()
   let id1 = timer_start(1000, 'MyHandler')
   let id2 = timer_start(2000, 'MyHandler')
   let info = timer_info()
@@ -102,7 +102,7 @@ func Test_stopall()
   call assert_equal(0, len(info))
 endfunc
 
-func Test_paused()
+func Test_timer_paused()
   let g:val = 0
 
   let id = timer_start(50, 'MyHandler')
@@ -140,7 +140,7 @@ func StopMyself(timer)
   endif
 endfunc
 
-func Test_delete_myself()
+func Test_timer_delete_myself()
   let g:called = 0
   let t = timer_start(10, 'StopMyself', {'repeat': -1})
   call WaitForAssert({-> assert_equal(2, g:called)})
@@ -159,16 +159,17 @@ func StopTimer2(timer)
   call timer_stop(g:timer1)
 endfunc
 
-func Test_stop_in_callback()
+func Test_timer_stop_in_callback()
   let g:timer1 = timer_start(10, 'StopTimer1')
   sleep 40m
+  call assert_equal(0, len(timer_info()))
 endfunc
 
 func StopTimerAll(timer)
   call timer_stopall()
 endfunc
 
-func Test_stop_all_in_callback()
+func Test_timer_stop_all_in_callback()
   let g:timer1 = timer_start(10, 'StopTimerAll')
   let info = timer_info()
   call assert_equal(1, len(info))
@@ -187,7 +188,7 @@ func InputCb(timer)
   call Resume()
 endfunc
 
-func Test_input_in_timer()
+func Test_timer_input_in_timer()
   let g:val = ''
   call timer_start(10, 'InputCb')
   call Standby(1000)
@@ -238,7 +239,7 @@ func Interrupt(timer)
   call test_feedinput("\<C-C>")
 endfunc
 
-func Test_peek_and_get_char()
+func Test_timer_peek_and_get_char()
   CheckUnix
   CheckGui
 
@@ -249,7 +250,7 @@ func Test_peek_and_get_char()
   call timer_stop(intr)
 endfunc
 
-func Test_getchar_zero()
+func Test_timer_getchar_zero()
   if has('win32') && !has('gui_running')
     throw 'Skipped: cannot get low-level input'
   endif
@@ -266,7 +267,7 @@ func Test_getchar_zero()
   call timer_stop(id)
 endfunc
 
-func Test_ex_mode()
+func Test_timer_ex_mode()
   " Function with an empty line.
   func Foo(...)
 
@@ -277,7 +278,7 @@ func Test_ex_mode()
   call timer_stop(timer)
 endfunc
 
-func Test_restore_count()
+func Test_timer_restore_count()
   if !CanRunVimInTerminal()
     throw 'Skipped: cannot run Vim in a terminal window'
   endif
@@ -310,7 +311,7 @@ endfunc
 
 " Test that the garbage collector isn't triggered if a timer callback invokes
 " vgetc().
-func Test_nocatch_garbage_collect()
+func Test_timer_nocatch_garbage_collect()
   " 'uptimetime. must be bigger than the timer timeout
   set ut=200
   call test_garbagecollect_soon()
@@ -332,7 +333,7 @@ func Test_nocatch_garbage_collect()
   delfunc FeedChar
 endfunc
 
-func Test_error_in_timer_callback()
+func Test_timer_error_in_timer_callback()
   if !has('terminal') || (has('win32') && has('gui_running'))
     throw 'Skipped: cannot run Vim in a terminal window'
   endif
--- a/src/version.c
+++ b/src/version.c
@@ -770,6 +770,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1855,
+/**/
     1854,
 /**/
     1853,