aboutsummaryrefslogtreecommitdiff
path: root/test/functional/eval/system_spec.lua
diff options
context:
space:
mode:
authorDaniel Hahler <git@thequod.de>2019-12-24 07:53:56 +0100
committerJustin M. Keyes <justinkz@gmail.com>2019-12-24 07:53:56 +0100
commitb3686b1597ea202de464df72a88fb5c76fd1b814 (patch)
tree558e4c3a3eadc2e4338cbe24fd785b2bf774a5fd /test/functional/eval/system_spec.lua
parent53fe877a97dbe5e5b5291fd1361123fc1b1da054 (diff)
downloadrneovim-b3686b1597ea202de464df72a88fb5c76fd1b814.tar.gz
rneovim-b3686b1597ea202de464df72a88fb5c76fd1b814.tar.bz2
rneovim-b3686b1597ea202de464df72a88fb5c76fd1b814.zip
system(), jobstart(): raise error on non-executable #11234
* tv_to_argv: error when cmd is not executable Callers always assume that emsg was emitted: - https://github.com/neovim/neovim/blob/57fbf288/src/nvim/eval.c#L12509 - https://github.com/neovim/neovim/blob/57fbf288/src/nvim/eval.c#L17923 - https://github.com/neovim/neovim/blob/57fbf288/src/nvim/eval.c#L18202 * test/functional/provider: display reason from missing_provider * provider#node#Detect: skip / handle non-existing node executable
Diffstat (limited to 'test/functional/eval/system_spec.lua')
-rw-r--r--test/functional/eval/system_spec.lua9
1 files changed, 6 insertions, 3 deletions
diff --git a/test/functional/eval/system_spec.lua b/test/functional/eval/system_spec.lua
index 1e4d760dbc..8b18eff451 100644
--- a/test/functional/eval/system_spec.lua
+++ b/test/functional/eval/system_spec.lua
@@ -8,6 +8,7 @@ local command = helpers.command
local exc_exec = helpers.exc_exec
local iswin = helpers.iswin
local os_kill = helpers.os_kill
+local pcall_err = helpers.pcall_err
local Screen = require('test.functional.ui.screen')
@@ -32,8 +33,9 @@ describe('system()', function()
return nvim_dir..'/printargs-test' .. (iswin() and '.exe' or '')
end
- it('sets v:shell_error if cmd[0] is not executable', function()
- call('system', { 'this-should-not-exist' })
+ it('throws error if cmd[0] is not executable', function()
+ eq("Vim:E475: Invalid value for argument cmd: 'this-should-not-exist' is not executable",
+ pcall_err(call, 'system', { 'this-should-not-exist' }))
eq(-1, eval('v:shell_error'))
end)
@@ -48,7 +50,8 @@ describe('system()', function()
eq(0, eval('v:shell_error'))
-- Provoke a non-zero v:shell_error.
- call('system', { 'this-should-not-exist' })
+ eq("Vim:E475: Invalid value for argument cmd: 'this-should-not-exist' is not executable",
+ pcall_err(call, 'system', { 'this-should-not-exist' }))
local old_val = eval('v:shell_error')
eq(-1, old_val)