Mercurial > vim
changeset 16273:397ab6afe01b v8.1.1141
patch 8.1.1141: terminal winpos test fails with very large terminal
commit https://github.com/vim/vim/commit/1b55797e90c5fe41691afe43aed8afffbbcebeb9
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Apr 9 21:17:32 2019 +0200
patch 8.1.1141: terminal winpos test fails with very large terminal
Problem: Terminal winpos test fails with very large terminal. (Dominique
Pelle)
Solution: Compute the expected size more accurately. (closes #4228)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 09 Apr 2019 21:30:05 +0200 |
parents | 604c58da9b1c |
children | 06c4d15f4a26 |
files | src/testdir/test_terminal.vim src/version.c |
diffstat | 2 files changed, 10 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/testdir/test_terminal.vim +++ b/src/testdir/test_terminal.vim @@ -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>")