mirror of
https://github.com/neovim/neovim.git
synced 2025-10-26 12:27:24 +00:00
test: avoid noise in NVIM_LOG_FILE
Problem:
Tests that _intentionally_ fail certain conditions cause noise in
$NVIM_LOG_FILE:
$NVIM_LOG_FILE: /home/runner/work/neovim/neovim/build/.nvimlog
(last 100 lines)
WRN 2023-01-16T18:26:27.673 T599.7799.0 unsubscribe:519: RPC: ch 1: tried to unsubscribe unknown event 'doesnotexist'
WRN 2023-01-16T18:29:00.557 ?.11151 server_start:163: Failed to start server: no such file or directory: /X/X/X/...
WRN 2023-01-16T18:33:07.269 127.0.0.1:12345 server_start:163: Failed to start server: address already in use: 127.0.0.1
...
-- Output to stderr:
module 'vim.shared' not found:
no field package.preload['vim.shared']
no file './vim/shared.lua'
no file '/home/runner/nvim-deps/usr/share/lua/5.1/vim/shared.lua'
no file '/home/runner/nvim-deps/usr/share/lua/5.1/vim/shared/init.lua'
no file '/home/runner/nvim-deps/usr/lib/lua/5.1/vim/shared.lua'
no file '/home/runner/nvim-deps/usr/lib/lua/5.1/vim/shared/init.lua'
no file './vim/shared.so'
...
E970: Failed to initialize builtin lua modules
Solution:
- Log to a private $NVIM_LOG_FILE in tests that intentionally fail and
cause ERR log messages.
- Assert that the expected messages are actually logged.
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
local helpers = require('test.functional.helpers')(after_each)
|
||||
local assert_log = helpers.assert_log
|
||||
local eq, clear, eval, command, nvim, next_msg =
|
||||
helpers.eq, helpers.clear, helpers.eval, helpers.command, helpers.nvim,
|
||||
helpers.next_msg
|
||||
@@ -9,6 +10,8 @@ local is_ci = helpers.is_ci
|
||||
local assert_alive = helpers.assert_alive
|
||||
local skip = helpers.skip
|
||||
|
||||
local testlog = 'Xtest-server-notify-log'
|
||||
|
||||
describe('notify', function()
|
||||
local channel
|
||||
|
||||
@@ -17,6 +20,10 @@ describe('notify', function()
|
||||
channel = nvim('get_api_info')[1]
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
os.remove(testlog)
|
||||
end)
|
||||
|
||||
describe('passing a valid channel id', function()
|
||||
it('sends the notification/args to the corresponding channel', function()
|
||||
eval('rpcnotify('..channel..', "test-event", 1, 2, 3)')
|
||||
@@ -72,8 +79,14 @@ describe('notify', function()
|
||||
end)
|
||||
|
||||
it('unsubscribe non-existing event #8745', function()
|
||||
clear{env={
|
||||
NVIM_LOG_FILE=testlog,
|
||||
}}
|
||||
nvim('subscribe', 'event1')
|
||||
nvim('unsubscribe', 'doesnotexist')
|
||||
retry(nil, 1000, function()
|
||||
assert_log("tried to unsubscribe unknown event 'doesnotexist'", testlog, 10)
|
||||
end)
|
||||
nvim('unsubscribe', 'event1')
|
||||
assert_alive()
|
||||
end)
|
||||
|
||||
Reference in New Issue
Block a user