diff options
author | Bram Moolenaar <Bram@vim.org> | 2022-09-01 14:38:01 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-09-01 14:38:01 +0100 |
commit | 36eb14fa3e729434cbb6f9078b4b330ae4f864f9 (patch) | |
tree | d44a569140f4cab86d125a4f1891682fe8aaa513 /src/testdir | |
parent | df5320c439e9a7f7bf1ebff3cb455d45e223547a (diff) |
patch 9.0.0348: MS-Windows: GUI mouse move event test is flakyv9.0.0348
Problem: MS-Windows: GUI mouse move event test is flaky.
Solution: Wait for a little while for the first move event.
Diffstat (limited to 'src/testdir')
-rw-r--r-- | src/testdir/test_gui.vim | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/src/testdir/test_gui.vim b/src/testdir/test_gui.vim index afac5ccb99..fcb54e5aed 100644 --- a/src/testdir/test_gui.vim +++ b/src/testdir/test_gui.vim @@ -1212,13 +1212,20 @@ endfunc " Move the mouse to the top-left in preparation for mouse events func PrepareForMouseEvent(args) - call extend(a:args, #{row: 1, col:1}) + call extend(a:args, #{row: 1, col: 1}) call test_gui_event('mouse', a:args) + let g:eventlist = [] call feedkeys('', 'Lx!') - " on MS-Windows the event may have a slight delay - if has('win32') - sleep 20m - endif + + " Wait a bit for the event. I may not come if the mouse didn't move, wait up + " to 100 msec. + for n in range(10) + if len(g:eventlist) > 0 + break + endif + sleep 10m + endfor + let g:eventlist = [] endfunc func MouseWasMoved() @@ -1229,7 +1236,7 @@ endfunc func Test_gui_mouse_move_event() let args = #{move: 1, button: 0, multiclick: 0, modifiers: 0} - " by default, does not generate mouse move events + " by default, no mouse move events are generated set mousemev& call assert_false(&mousemev) @@ -1238,7 +1245,6 @@ func Test_gui_mouse_move_event() " start at mouse pos (1,1), clear counter call PrepareForMouseEvent(args) - let g:eventlist = [] call extend(args, #{row: 3, col: 30, cell: v:true}) call test_gui_event('mouse', args) @@ -1248,13 +1254,12 @@ func Test_gui_mouse_move_event() call test_gui_event('mouse', args) call feedkeys('', 'Lx!') - " no events since mousemev off + " no events since 'mousemev' is off call assert_equal([], g:eventlist) " turn on mouse events and try the same thing set mousemev call PrepareForMouseEvent(args) - let g:eventlist = [] call extend(args, #{row: 3, col: 30, cell: v:true}) call test_gui_event('mouse', args) @@ -1274,7 +1279,6 @@ func Test_gui_mouse_move_event() " wiggle the mouse around within a screen cell, shouldn't trigger events call extend(args, #{cell: v:false}) call PrepareForMouseEvent(args) - let g:eventlist = [] call extend(args, #{row: 1, col: 2, cell: v:false}) call test_gui_event('mouse', args) |