mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
test: Turn printargs_path into a function
When test/functional/eval/system_spec.lua is run on its own, helpers.os_name() was being called before a session had been created. This caused that describe block to fail. Turning printargs_path into a function delays the call of helpers.os_name() until the test is being run, which ensures a session is available.
This commit is contained in:
parent
7e30fe3157
commit
ce51fa0955
@ -30,8 +30,10 @@ describe('system()', function()
|
||||
before_each(clear)
|
||||
|
||||
describe('command passed as a List', function()
|
||||
local printargs_path = helpers.nvim_dir..'/printargs-test'
|
||||
.. (helpers.os_name() == 'windows' and '.exe' or '')
|
||||
local function printargs_path()
|
||||
return helpers.nvim_dir..'/printargs-test'
|
||||
.. (helpers.os_name() == 'windows' and '.exe' or '')
|
||||
end
|
||||
|
||||
it('sets v:shell_error if cmd[0] is not executable', function()
|
||||
call('system', { 'this-should-not-exist' })
|
||||
@ -63,16 +65,16 @@ describe('system()', function()
|
||||
|
||||
it('quotes arguments correctly #5280', function()
|
||||
local out = call('system',
|
||||
{ printargs_path, [[1]], [[2 "3]], [[4 ' 5]], [[6 ' 7']] })
|
||||
{ printargs_path(), [[1]], [[2 "3]], [[4 ' 5]], [[6 ' 7']] })
|
||||
|
||||
eq(0, eval('v:shell_error'))
|
||||
eq([[arg1=1;arg2=2 "3;arg3=4 ' 5;arg4=6 ' 7';]], out)
|
||||
|
||||
out = call('system', { printargs_path, [['1]], [[2 "3]] })
|
||||
out = call('system', { printargs_path(), [['1]], [[2 "3]] })
|
||||
eq(0, eval('v:shell_error'))
|
||||
eq([[arg1='1;arg2=2 "3;]], out)
|
||||
|
||||
out = call('system', { printargs_path, "A\nB" })
|
||||
out = call('system', { printargs_path(), "A\nB" })
|
||||
eq(0, eval('v:shell_error'))
|
||||
eq("arg1=A\nB;", out)
|
||||
end)
|
||||
|
Loading…
Reference in New Issue
Block a user