From: Bram Moolenaar Date: Fri, 6 May 2022 10:21:19 +0000 (+0100) Subject: patch 8.2.4879: screendump test may fail when using valgrind X-Git-Tag: v8.2.4879 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3e79427803927be42409e9e50c0a308526b83656;p=vim patch 8.2.4879: screendump test may fail when using valgrind Problem: Screendump test may fail when using valgrind. Solution: Wait longer for the first screendump. --- diff --git a/src/testdir/screendump.vim b/src/testdir/screendump.vim index 8fc496d1e..d872a809d 100644 --- a/src/testdir/screendump.vim +++ b/src/testdir/screendump.vim @@ -15,15 +15,18 @@ endif " Verify that Vim running in terminal buffer "buf" matches the screen dump. " "options" is passed to term_dumpwrite(). +" Additionally, the "wait" entry can specify the maximum time to wait for the +" screen dump to match in msec (default 1000 msec). " The file name used is "dumps/{filename}.dump". " Optionally an extra argument can be passed which is prepended to the error " message. Use this when using the same dump file with different options. -" Will wait for up to a second for the screen dump to match. " Returns non-zero when verification fails. func VerifyScreenDump(buf, filename, options, ...) let reference = 'dumps/' . a:filename . '.dump' let testfile = 'failed/' . a:filename . '.dump' + let max_loops = get(a:options, 'wait', 1000) / 10 + " Starting a terminal to make a screendump is always considered flaky. let g:test_is_flaky = 1 @@ -60,7 +63,7 @@ func VerifyScreenDump(buf, filename, options, ...) endif break endif - if i == 100 + if i == max_loops " Leave the failed dump around for inspection. if filereadable(reference) let msg = 'See dump file difference: call term_dumpdiff("testdir/' .. testfile .. '", "testdir/' .. reference .. '")' diff --git a/src/testdir/test_vim9_builtin.vim b/src/testdir/test_vim9_builtin.vim index 41093f001..b4637434d 100644 --- a/src/testdir/test_vim9_builtin.vim +++ b/src/testdir/test_vim9_builtin.vim @@ -4552,7 +4552,8 @@ func Test_win_gotoid_in_mapping() END call writefile(lines, 'Xgotoscript') let buf = RunVimInTerminal('-S Xgotoscript', #{rows: 15, wait_for_ruler: 0}) - call VerifyScreenDump(buf, 'Test_win_gotoid_1', {}) + " wait longer here, since we didn't wait for the ruler + call VerifyScreenDump(buf, 'Test_win_gotoid_1', #{wait: 3000}) call term_sendkeys(buf, "3Gvl") call VerifyScreenDump(buf, 'Test_win_gotoid_2', {}) diff --git a/src/version.c b/src/version.c index 30f420bdd..5a597a8fd 100644 --- a/src/version.c +++ b/src/version.c @@ -746,6 +746,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 4879, /**/ 4878, /**/