]> granicus.if.org Git - vim/commitdiff
patch 8.1.1141: terminal winpos test fails with very large terminal v8.1.1141
authorBram Moolenaar <Bram@vim.org>
Tue, 9 Apr 2019 19:17:32 +0000 (21:17 +0200)
committerBram Moolenaar <Bram@vim.org>
Tue, 9 Apr 2019 19:17:32 +0000 (21:17 +0200)
Problem:    Terminal winpos test fails with very large terminal. (Dominique
            Pelle)
Solution:   Compute the expected size more accurately. (closes #4228)

src/testdir/test_terminal.vim
src/version.c

index e6ae7e25a5eb77ee795e715748f1a790437c05c9..e337c477561961e5c76d7c31b762debbe822f618 100644 (file)
@@ -1912,9 +1912,15 @@ func Test_terminal_getwinpos()
   let ypos = str2nr(substitute(line, '\[\d\+, \(\d\+\)\]', '\1', ''))
 
   " Position must be bigger than the getwinpos() result of Vim itself.
+  " The calcuation 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()
-  call assert_inrange(xroot + 2, xroot + 1000, xpos)
-  call assert_inrange(yroot + 2, yroot + 1000, ypos)
+  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 term_wait(buf)
   call term_sendkeys(buf, ":q\<CR>")
index 7c3490e7e5ab480b64e90de1167791cd78b6473f..4dc55f4f84a67a31153e5df07c2336818d1c4147 100644 (file)
@@ -771,6 +771,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1141,
 /**/
     1140,
 /**/