From c4eb1cb17b869f7108ebfe42204924bed0436ad1 Mon Sep 17 00:00:00 2001 From: Aliaksei Budavei <0x000c70@gmail.com> Date: Sun, 8 Jun 2025 15:52:42 +0200 Subject: [PATCH] patch 9.1.1438: tests: Test_breakindent_list_split() fails MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 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 --- src/testdir/runtest.vim | 14 ++++++++++++-- src/testdir/test_highlight.vim | 11 +++++++++++ src/version.c | 2 ++ 3 files changed, 25 insertions(+), 2 deletions(-) diff --git a/src/testdir/runtest.vim b/src/testdir/runtest.vim index 0d53121557..f03fe44499 100644 --- a/src/testdir/runtest.vim +++ b/src/testdir/runtest.vim @@ -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() diff --git a/src/testdir/test_highlight.vim b/src/testdir/test_highlight.vim index 5189b618cf..91423eb96e 100644 --- a/src/testdir/test_highlight.vim +++ b/src/testdir/test_highlight.vim @@ -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([])) diff --git a/src/version.c b/src/version.c index 3d83858bab..6896410fbf 100644 --- a/src/version.c +++ b/src/version.c @@ -709,6 +709,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1438, /**/ 1437, /**/ -- 2.47.2