]> granicus.if.org Git - vim/commitdiff
patch 9.0.0968: GUI mouse event test is a bit flaky v9.0.0968
authorBram Moolenaar <Bram@vim.org>
Mon, 28 Nov 2022 21:20:48 +0000 (21:20 +0000)
committerBram Moolenaar <Bram@vim.org>
Mon, 28 Nov 2022 21:20:48 +0000 (21:20 +0000)
Problem:    GUI mouse event test is a bit flaky.
Solution:   Mark the test case as flaky.  Move test function failure checks to
            a separate test function.

src/testdir/test_gui.vim
src/version.c

index 8ac0985c39fff70395ba11191c1a9f1b6df790a1..3c7cfb9a0ba1a8294d8403965aa9984b016def31 100644 (file)
@@ -904,13 +904,17 @@ endfunc
 
 " Test GUI mouse events
 func Test_gui_mouse_event()
+  " Low level input isn't 100% reliable
+  let g:test_is_flaky = 1
+
   set mousemodel=extend
   call test_override('no_query_mouse', 1)
   new
   call setline(1, ['one two three', 'four five six'])
-
-  " place the cursor using left click in normal mode
   call cursor(1, 1)
+  redraw!
+
+  " place the cursor using left click and release in normal mode
   let args = #{button: 0, row: 2, col: 4, multiclick: 0, modifiers: 0}
   call test_gui_event('mouse', args)
   let args.button = 3
@@ -1175,10 +1179,21 @@ func Test_gui_mouse_event()
   call feedkeys("\<Esc>", 'Lx!')
   call assert_equal([0, 2, 7, 0], getpos('.'))
   call assert_equal('wo thrfour five sixteen', getline(2))
+
   set mouse&
   let &guioptions = save_guioptions
+  bw!
+  call test_override('no_query_mouse', 0)
+  set mousemodel&
+endfunc
+
+" Test invalid parameters for test_gui_event()
+func Test_gui_event_mouse_fails()
+  call test_override('no_query_mouse', 1)
+  new
+  call setline(1, ['one two three', 'four five six'])
+  set mousemodel=extend
 
-  " Test invalid parameters for test_gui_event()
   let args = #{row: 2, col: 4, multiclick: 0, modifiers: 0}
   call assert_false(test_gui_event('mouse', args))
   let args = #{button: 0, col: 4, multiclick: 0, modifiers: 0}
index 395bb2ad734268cfaaa3ca89905c37ecdca0ecdf..f26f91a44a40f85eabbb705a6f868617b9b8556f 100644 (file)
@@ -695,6 +695,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    968,
 /**/
     967,
 /**/