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>
diff --git a/src/testdir/runtest.vim b/src/testdir/runtest.vim
index 0d53121..f03fe44 100644
--- a/src/testdir/runtest.vim
+++ b/src/testdir/runtest.vim
@@ -56,10 +56,17 @@
" 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 @@
" 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 5189b61..91423eb 100644
--- a/src/testdir/test_highlight.vim
+++ b/src/testdir/test_highlight.vim
@@ -1144,6 +1144,17 @@
" 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 3d83858..6896410 100644
--- a/src/version.c
+++ b/src/version.c
@@ -710,6 +710,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1438,
+/**/
1437,
/**/
1436,