From 2afbce7651f79b0626ebeae3688274ce18ac2920 Mon Sep 17 00:00:00 2001 From: "Justin M. Keyes" Date: Sun, 19 Sep 2021 02:29:37 -0700 Subject: refactor(tests): remove redir_exec #15718 Problem - `redir_exec` is obsolete, but it keeps getting used in new tests because people copy existing tests. - Disadvantages of `redir_exec`: - Captures extra junk before the actual error/message that we _want_ to test. - Does not fail on error, unlike e.g. `command()`. Solution - Use new functions like `nvim_exec` and `pcall_err`. --- test/functional/vimscript/execute_spec.lua | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'test/functional/vimscript/execute_spec.lua') diff --git a/test/functional/vimscript/execute_spec.lua b/test/functional/vimscript/execute_spec.lua index fccf52935b..e21c71dc7f 100644 --- a/test/functional/vimscript/execute_spec.lua +++ b/test/functional/vimscript/execute_spec.lua @@ -3,7 +3,6 @@ local eq = helpers.eq local eval = helpers.eval local clear = helpers.clear local source = helpers.source -local redir_exec = helpers.redir_exec local exc_exec = helpers.exc_exec local funcs = helpers.funcs local Screen = require('test.functional.ui.screen') @@ -15,7 +14,14 @@ describe('execute()', function() before_each(clear) it('captures the same result as :redir', function() - eq(redir_exec('messages'), funcs.execute('messages')) + command([[ + echomsg 'foo 1' + echomsg 'foo 2' + redir => g:__redir_output + silent! messages + redir END + ]]) + eq(eval('g:__redir_output'), funcs.execute('messages')) end) it('captures the concatenated outputs of a List of commands', function() -- cgit