patch 9.1.1438: tests: Test_breakindent_list_split() fails

Problem:  tests: Test_breakindent_list_split() fails
          (Phạm Bình An)
Solution: Always reset "&columns" and "&lines" for GUI builds
          (Aliaksei Budavei)

Ensure that "&columns" and "&lines" are always set to their
default values before calling "SetUp()", if any, for EACH
test run by a GUI build to avoid yet-to-be-run tests from
inheriting possibly changed values (after window resizing)
and leading to broken assumptions about available estate and
occasional test failures.

fixes: #17453
closes: #17447

Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Aliaksei Budavei
2025-06-08 15:52:42 +02:00
committed by Christian Brabandt
parent 0174d8f386
commit c4eb1cb17b
3 changed files with 25 additions and 2 deletions

View File

@ -56,10 +56,17 @@ silent! endwhile
" In the GUI we can always change the screen size.
if has('gui_running')
if has('gui_gtk')
" to keep screendump size unchanged
" Use e.g. SetUp() and TearDown() to change "&guifont" when needed;
" otherwise, keep the following value to match current screendumps.
set guifont=Monospace\ 10
endif
set columns=80 lines=25
func s:SetDefaultOptionsForGUIBuilds()
set columns=80 lines=25
endfunc
else
func s:SetDefaultOptionsForGUIBuilds()
endfunc
endif
" Check that the screen size is at least 24 x 80 characters.
@ -272,6 +279,9 @@ func RunTheTest(test)
" directory after executing the test.
let save_cwd = getcwd()
" Permit "SetUp()" implementations to override default settings.
call s:SetDefaultOptionsForGUIBuilds()
if exists("*SetUp")
try
call SetUp()

View File

@ -1144,6 +1144,17 @@ endfunc
" Test for the hlset() function
func Test_hlset()
" FIXME: With GVim, _current_ test cases that are run before this one may
" influence the result of calling "hlset(hlget())", depending on what
" "&guifont" is set to. For example, introduce SetUp() as follows:
"
" if CanRunVimInTerminal() && has('gui_running') && has('gui_gtk')
" def SetUp()
" set guifont=Monospace\ 10
" enddef
" endif
"
" and see "E416: Missing equal sign: ... line 4" for this test case.
let lines =<< trim END
call assert_equal(0, hlset(test_null_list()))
call assert_equal(0, hlset([]))

View File

@ -709,6 +709,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
1438,
/**/
1437,
/**/