From f1464d0d8023d409906c1a0d2c59e88623bef2e5 Mon Sep 17 00:00:00 2001 From: Jan Edmund Lazo Date: Fri, 24 May 2019 02:08:16 -0400 Subject: [PATCH] vim-patch:8.1.1171: statusline test could fail in large terminal Problem: Statusline test could fail in large terminal. Solution: Make the test work on a huge terminal. (Dominique Pelle, closes vim/vim#4255) https://github.com/vim/vim/commit/316c16797a0baee8f4bced2235b783b21fbbea65 --- src/nvim/testdir/test_statusline.vim | 40 ++++++++++++++++------------ 1 file changed, 23 insertions(+), 17 deletions(-) diff --git a/src/nvim/testdir/test_statusline.vim b/src/nvim/testdir/test_statusline.vim index eafbecdf69..b86340a23a 100644 --- a/src/nvim/testdir/test_statusline.vim +++ b/src/nvim/testdir/test_statusline.vim @@ -62,23 +62,23 @@ func Test_statusline() only set laststatus=2 set splitbelow - call setline(1, range(1, 200)) + call setline(1, range(1, 10000)) " %b: Value of character under cursor. " %B: As above, in hexadecimal. - call cursor(180, 2) + call cursor(9000, 1) set statusline=%b,%B - call assert_match('^56,38\s*$', s:get_statusline()) + call assert_match('^57,39\s*$', s:get_statusline()) " %o: Byte number in file of byte under cursor, first byte is 1. " %O: As above, in hexadecimal. set statusline=%o,%O set fileformat=dos - call assert_match('^789,315\s*$', s:get_statusline()) + call assert_match('^52888,CE98\s*$', s:get_statusline()) set fileformat=mac - call assert_match('^610,262\s*$', s:get_statusline()) + call assert_match('^43889,AB71\s*$', s:get_statusline()) set fileformat=unix - call assert_match('^610,262\s*$', s:get_statusline()) + call assert_match('^43889,AB71\s*$', s:get_statusline()) set fileformat& " %f: Path to the file in the buffer, as typed or relative to current dir. @@ -112,7 +112,7 @@ func Test_statusline() " %L: Number of line in buffer. " %c: Column number. set statusline=%l/%L,%c - call assert_match('^180/200,2\s*$', s:get_statusline()) + call assert_match('^9000/10000,1\s*$', s:get_statusline()) " %m: Modified flag, text is "[+]", "[-]" if 'modifiable' is off. " %M: Modified flag, text is ",+" or ",-". @@ -136,7 +136,7 @@ func Test_statusline() call assert_match('^0,Top\s*$', s:get_statusline()) norm G call assert_match('^100,Bot\s*$', s:get_statusline()) - 180 + 9000 " Don't check the exact percentage as it depends on the window size call assert_match('^90,\(Top\|Bot\|\d\+%\)\s*$', s:get_statusline()) @@ -165,7 +165,7 @@ func Test_statusline() " %v: Virtual column number. " %V: Virtual column number as -{num}. Not displayed if equal to 'c'. - call cursor(180, 2) + call cursor(9000, 2) set statusline=%v,%V call assert_match('^2,\s*$', s:get_statusline()) set virtualedit=all @@ -195,20 +195,26 @@ func Test_statusline() " Test min/max width, leading zeroes, left/right justify. set statusline=%04B - call cursor(180, 2) - call assert_match('^0038\s*$', s:get_statusline()) + call cursor(9000, 1) + call assert_match('^0039\s*$', s:get_statusline()) set statusline=#%4B# - call assert_match('^# 38#\s*$', s:get_statusline()) + call assert_match('^# 39#\s*$', s:get_statusline()) set statusline=#%-4B# - call assert_match('^#38 #\s*$', s:get_statusline()) + call assert_match('^#39 #\s*$', s:get_statusline()) set statusline=%.6f call assert_match('^$', s:get_statusline()) + " First check with when %< should not truncate with many columns + exe 'set statusline=a%$', s:get_statusline()) "%{: Evaluate expression between '%{' and '}' and substitute result. syntax on