From a4b442614c5ca4ebf32acf5cf0b7b718496f1c94 Mon Sep 17 00:00:00 2001
From: Bram Moolenaar <Bram@vim.org>
Date: Sun, 12 Jul 2020 21:38:29 +0200
Subject: [PATCH] patch 8.2.1198: terminal2 test sometimes hangs in the GUI on
 Travis

Problem:    Terminal2 test sometimes hangs in the GUI on Travis.
Solution:   Move test function to terminal3 to see if the problem moves too.
---
 src/testdir/test_terminal2.vim | 44 ----------------------------------
 src/testdir/test_terminal3.vim | 44 ++++++++++++++++++++++++++++++++++
 src/version.c                  |  2 ++
 3 files changed, 46 insertions(+), 44 deletions(-)

diff --git a/src/testdir/test_terminal2.vim b/src/testdir/test_terminal2.vim
index b0eb3faf4b..deeb86f945 100644
--- a/src/testdir/test_terminal2.vim
+++ b/src/testdir/test_terminal2.vim
@@ -536,49 +536,5 @@ func Test_term_gettty()
   exe buf . 'bwipe'
 endfunc
 
-func Test_terminal_getwinpos()
-  CheckRunVimInTerminal
-
-  " split, go to the bottom-right window
-  split
-  wincmd j
-  set splitright
-
-  call writefile([
-	\ 'echo getwinpos()',
-	\ ], 'XTest_getwinpos')
-  let buf = RunVimInTerminal('-S XTest_getwinpos', {'cols': 60})
-  call TermWait(buf)
-
-  " Find the output of getwinpos() in the bottom line.
-  let rows = term_getsize(buf)[0]
-  call WaitForAssert({-> assert_match('\[\d\+, \d\+\]', term_getline(buf, rows))})
-  let line = term_getline(buf, rows)
-  let xpos = str2nr(substitute(line, '\[\(\d\+\), \d\+\]', '\1', ''))
-  let ypos = str2nr(substitute(line, '\[\d\+, \(\d\+\)\]', '\1', ''))
-
-  " Position must be bigger than the getwinpos() result of Vim itself.
-  " The calculation in the console assumes a 10 x 7 character cell.
-  " In the GUI it can be more, let's assume a 20 x 14 cell.
-  " And then add 100 / 200 tolerance.
-  let [xroot, yroot] = getwinpos()
-  let winpos = 50->getwinpos()
-  call assert_equal(xroot, winpos[0])
-  call assert_equal(yroot, winpos[1])
-  let [winrow, wincol] = win_screenpos('.')
-  let xoff = wincol * (has('gui_running') ? 14 : 7) + 100
-  let yoff = winrow * (has('gui_running') ? 20 : 10) + 200
-  call assert_inrange(xroot + 2, xroot + xoff, xpos)
-  call assert_inrange(yroot + 2, yroot + yoff, ypos)
-
-  call TermWait(buf)
-  call term_sendkeys(buf, ":q\<CR>")
-  call StopVimInTerminal(buf)
-  call delete('XTest_getwinpos')
-  exe buf . 'bwipe!'
-  set splitright&
-  only!
-endfunc
-
 
 " vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/testdir/test_terminal3.vim b/src/testdir/test_terminal3.vim
index add7678018..8405cd16a4 100644
--- a/src/testdir/test_terminal3.vim
+++ b/src/testdir/test_terminal3.vim
@@ -519,5 +519,49 @@ func Test_term_modeless_selection()
   new | only!
 endfunc
 
+func Test_terminal_getwinpos()
+  CheckRunVimInTerminal
+
+  " split, go to the bottom-right window
+  split
+  wincmd j
+  set splitright
+
+  call writefile([
+	\ 'echo getwinpos()',
+	\ ], 'XTest_getwinpos')
+  let buf = RunVimInTerminal('-S XTest_getwinpos', {'cols': 60})
+  call TermWait(buf)
+
+  " Find the output of getwinpos() in the bottom line.
+  let rows = term_getsize(buf)[0]
+  call WaitForAssert({-> assert_match('\[\d\+, \d\+\]', term_getline(buf, rows))})
+  let line = term_getline(buf, rows)
+  let xpos = str2nr(substitute(line, '\[\(\d\+\), \d\+\]', '\1', ''))
+  let ypos = str2nr(substitute(line, '\[\d\+, \(\d\+\)\]', '\1', ''))
+
+  " Position must be bigger than the getwinpos() result of Vim itself.
+  " The calculation in the console assumes a 10 x 7 character cell.
+  " In the GUI it can be more, let's assume a 20 x 14 cell.
+  " And then add 100 / 200 tolerance.
+  let [xroot, yroot] = getwinpos()
+  let winpos = 50->getwinpos()
+  call assert_equal(xroot, winpos[0])
+  call assert_equal(yroot, winpos[1])
+  let [winrow, wincol] = win_screenpos('.')
+  let xoff = wincol * (has('gui_running') ? 14 : 7) + 100
+  let yoff = winrow * (has('gui_running') ? 20 : 10) + 200
+  call assert_inrange(xroot + 2, xroot + xoff, xpos)
+  call assert_inrange(yroot + 2, yroot + yoff, ypos)
+
+  call TermWait(buf)
+  call term_sendkeys(buf, ":q\<CR>")
+  call StopVimInTerminal(buf)
+  call delete('XTest_getwinpos')
+  exe buf . 'bwipe!'
+  set splitright&
+  only!
+endfunc
+
 
 " vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/version.c b/src/version.c
index 19b911e465..9d59181c93 100644
--- a/src/version.c
+++ b/src/version.c
@@ -754,6 +754,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1198,
 /**/
     1197,
 /**/
-- 
GitLab