aboutsummaryrefslogtreecommitdiff
path: root/test/functional/helpers.lua
diff options
context:
space:
mode:
authorbfredl <bjorn.linse@gmail.com>2022-09-20 22:03:16 +0200
committerbfredl <bjorn.linse@gmail.com>2022-09-22 10:38:11 +0200
commit02f8ca59a80cd3570593c717ff6ceadc33239b89 (patch)
treeffe2148ab3193f2c122ed43e9655e3179b17c1e5 /test/functional/helpers.lua
parent93b30582db520ae20d66b000053007c11b62c15d (diff)
downloadrneovim-02f8ca59a80cd3570593c717ff6ceadc33239b89.tar.gz
rneovim-02f8ca59a80cd3570593c717ff6ceadc33239b89.tar.bz2
rneovim-02f8ca59a80cd3570593c717ff6ceadc33239b89.zip
fix(tests): indicate in test logs when nvim exit times out
When it happens it wastes 2 seconds which is NOT included in the normal busted timing info. It is hard to correct this, but we can at least print a warning when this happens.
Diffstat (limited to 'test/functional/helpers.lua')
-rw-r--r--test/functional/helpers.lua15
1 files changed, 14 insertions, 1 deletions
diff --git a/test/functional/helpers.lua b/test/functional/helpers.lua
index d672037a1e..eff54b6d4a 100644
--- a/test/functional/helpers.lua
+++ b/test/functional/helpers.lua
@@ -380,10 +380,23 @@ local function remove_args(args, args_rm)
return new_args
end
+function module.check_close(old_session)
+ local start_time = luv.now()
+ old_session:close()
+ luv.update_time() -- Update cached value of luv.now() (libuv: uv_now()).
+ local end_time = luv.now()
+ local delta = end_time - start_time
+ if delta > 500 then
+ print("nvim took " .. delta .. " milliseconds to exit after last test\n"..
+ "This indicates a likely problem with the test even if it passed!\n")
+ io.stdout:flush()
+ end
+end
+
--- @param io_extra used for stdin_fd, see :help ui-option
function module.spawn(argv, merge, env, keep, io_extra)
if session and not keep then
- session:close()
+ module.check_close(session)
end
local child_stream = ChildProcessStream.spawn(