aboutsummaryrefslogtreecommitdiff
path: root/test/functional/api/vim_spec.lua
diff options
context:
space:
mode:
Diffstat (limited to 'test/functional/api/vim_spec.lua')
-rw-r--r--test/functional/api/vim_spec.lua14
1 files changed, 13 insertions, 1 deletions
diff --git a/test/functional/api/vim_spec.lua b/test/functional/api/vim_spec.lua
index 110b3a4b16..cd45914552 100644
--- a/test/functional/api/vim_spec.lua
+++ b/test/functional/api/vim_spec.lua
@@ -178,6 +178,11 @@ describe('API', function()
-- Verify NO hit-enter prompt.
eq({mode='n', blocking=false}, nvim("get_mode"))
end)
+
+ it('Does not cause heap buffer overflow with large output', function()
+ eq(eval('string(range(1000000))'),
+ nvim('command_output', 'echo range(1000000)'))
+ end)
end)
describe('nvim_eval', function()
@@ -1148,6 +1153,13 @@ describe('API', function()
before_each(function()
meths.set_option('isident', '')
end)
+
+ local it_maybe_pending = it
+ if (helpers.isCI('appveyor') and os.getenv('CONFIGURATION') == 'MSVC_32') then
+ -- For "works with &opt" (flaky on MSVC_32), but not easy to skip alone. #10241
+ it_maybe_pending = pending
+ end
+
local function simplify_east_api_node(line, east_api_node)
if east_api_node == NIL then
return nil
@@ -1345,7 +1357,7 @@ describe('API', function()
end
assert:set_parameter('TableFormatLevel', 1000000)
require('test.unit.viml.expressions.parser_tests')(
- it, _check_parsing, hl, fmtn)
+ it_maybe_pending, _check_parsing, hl, fmtn)
end)
describe('nvim_list_uis', function()