aboutsummaryrefslogtreecommitdiff
path: root/test/functional/api/vim_spec.lua
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2022-10-08 20:10:00 +0800
committerGitHub <noreply@github.com>2022-10-08 20:10:00 +0800
commit2a12faaec18115bf057427834832ff20ccb3ffd4 (patch)
treebf7137a286fb14de0822eb6c7e017a8d0ef605a7 /test/functional/api/vim_spec.lua
parent0773a9ee3a21db54cd6b2376dd2e087bc09d5ea1 (diff)
downloadrneovim-2a12faaec18115bf057427834832ff20ccb3ffd4.tar.gz
rneovim-2a12faaec18115bf057427834832ff20ccb3ffd4.tar.bz2
rneovim-2a12faaec18115bf057427834832ff20ccb3ffd4.zip
fix(api): dynamically allocate line buffer for nvim_out_write (#20537)
Diffstat (limited to 'test/functional/api/vim_spec.lua')
-rw-r--r--test/functional/api/vim_spec.lua23
1 files changed, 22 insertions, 1 deletions
diff --git a/test/functional/api/vim_spec.lua b/test/functional/api/vim_spec.lua
index 0b2b371046..909ff80837 100644
--- a/test/functional/api/vim_spec.lua
+++ b/test/functional/api/vim_spec.lua
@@ -1905,11 +1905,32 @@ describe('API', function()
end)
end)
+ describe('nvim_out_write', function()
+ it('prints long messages correctly #20534', function()
+ exec([[
+ set more
+ redir => g:out
+ silent! call nvim_out_write('a')
+ silent! call nvim_out_write('a')
+ silent! call nvim_out_write('a')
+ silent! call nvim_out_write("\n")
+ silent! call nvim_out_write('a')
+ silent! call nvim_out_write('a')
+ silent! call nvim_out_write(repeat('a', 5000) .. "\n")
+ silent! call nvim_out_write('a')
+ silent! call nvim_out_write('a')
+ silent! call nvim_out_write('a')
+ silent! call nvim_out_write("\n")
+ redir END
+ ]])
+ eq('\naaa\n' .. ('a'):rep(5002) .. '\naaa', meths.get_var('out'))
+ end)
+ end)
+
describe('nvim_err_write', function()
local screen
before_each(function()
- clear()
screen = Screen.new(40, 8)
screen:attach()
screen:set_default_attr_ids({