diff options
author | Bram Moolenaar <Bram@vim.org> | 2022-09-22 15:13:00 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-09-22 15:13:00 +0100 |
commit | daaa3d9965d74faf1f75aea218822bfb7ba687a7 (patch) | |
tree | 991522294b86225544fc746e98756489ea2ec14f /src | |
parent | fcba86c0316dc0d6341078b50e7967206a1627a0 (diff) |
patch 9.0.0545: when a test is slow and CI times out there is no time infov9.0.0545
Problem: When a test is slow and CI times out there is no time info.
Solution: Add the elapsed time to the "Executing" message.
Diffstat (limited to 'src')
-rw-r--r-- | src/testdir/Makefile | 5 | ||||
-rw-r--r-- | src/testdir/runtest.vim | 10 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 13 insertions, 4 deletions
diff --git a/src/testdir/Makefile b/src/testdir/Makefile index adec1f167e..54a998961f 100644 --- a/src/testdir/Makefile +++ b/src/testdir/Makefile @@ -12,7 +12,7 @@ SCRIPTSOURCE = ../../runtime # Comment out this line to see the verbose output of tests. # # Catches SwapExists to avoid hanging at the ATTENTION prompt. -REDIR_TEST_TO_NULL = --cmd 'au SwapExists * let v:swapchoice = "e"' | LC_ALL=C LANG=C LANGUAGE=C awk '/Executing Test_/{match($$0, "Executing Test_[^\\)]*\\)"); print substr($$0, RSTART, RLENGTH) "\r"; fflush()}' +REDIR_TEST_TO_NULL = --cmd 'au SwapExists * let v:swapchoice = "e"' | LC_ALL=C LANG=C LANGUAGE=C awk '/Executing Test_/{match($$0, "(took .*; now )?Executing Test_[^\\)]*\\)"); print substr($$0, RSTART, RLENGTH) "\r"; fflush()}' # Uncomment this line to use valgrind for memory leaks and extra warnings. # The output goes into a file "valgrind.testN" @@ -20,6 +20,9 @@ REDIR_TEST_TO_NULL = --cmd 'au SwapExists * let v:swapchoice = "e"' | LC_ALL=C L # This will make testing about 10 times as slow. # VALGRIND = valgrind --tool=memcheck --leak-check=yes --num-callers=35 --log-file=valgrind.$* +# To execute one test, e.g. in gdb, use something like this: +# run -f -u unix.vim --gui-dialog-file guidialog -U NONE --noplugin --not-a-term -S runtest.vim test_name.vim + default: nongui # The list of tests is common to all systems. diff --git a/src/testdir/runtest.vim b/src/testdir/runtest.vim index ebc692b478..bb0325fe89 100644 --- a/src/testdir/runtest.vim +++ b/src/testdir/runtest.vim @@ -173,11 +173,15 @@ function GetAllocId(name) return lnum - top - 1 endfunc +let g:func_start = reltime() + func RunTheTest(test) - echoconsole 'Executing ' . a:test + let prefix = '' if has('reltime') - let func_start = reltime() + let prefix = 'took ' .. reltimestr(reltime(g:func_start)) .. '; now ' + let g:func_start = reltime() endif + echoconsole prefix .. 'Executing ' .. a:test " Avoid stopping at the "hit enter" prompt set nomore @@ -292,7 +296,7 @@ func RunTheTest(test) let message = 'Executed ' . a:test if has('reltime') let message ..= repeat(' ', 50 - len(message)) - let time = reltime(func_start) + let time = reltime(g:func_start) if reltimefloat(time) > 0.1 let message = s:t_bold .. message endif diff --git a/src/version.c b/src/version.c index d9bcbbc7b8..196b9d868d 100644 --- a/src/version.c +++ b/src/version.c @@ -700,6 +700,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 545, +/**/ 544, /**/ 543, |