aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/functional/api/buffer_spec.lua134
-rw-r--r--test/functional/api/server_requests_spec.lua4
-rw-r--r--test/functional/api/vim_spec.lua12
-rw-r--r--test/functional/eval/api_functions_spec.lua148
-rw-r--r--test/functional/helpers.lua33
-rw-r--r--test/functional/plugin/shada_spec.lua12
-rw-r--r--test/functional/shada/buffers_spec.lua4
-rw-r--r--test/functional/viml/function_spec.lua9
-rw-r--r--test/unit/buffer_spec.lua26
9 files changed, 268 insertions, 114 deletions
diff --git a/test/functional/api/buffer_spec.lua b/test/functional/api/buffer_spec.lua
index cf8a83ad81..2cc803da52 100644
--- a/test/functional/api/buffer_spec.lua
+++ b/test/functional/api/buffer_spec.lua
@@ -3,105 +3,111 @@ local helpers = require('test.functional.helpers')(after_each)
local clear, nvim, buffer = helpers.clear, helpers.nvim, helpers.buffer
local curbuf, curwin, eq = helpers.curbuf, helpers.curwin, helpers.eq
local curbufmeths, ok = helpers.curbufmeths, helpers.ok
-local funcs = helpers.funcs
+local funcs, request = helpers.funcs, helpers.request
describe('buffer_* functions', function()
before_each(clear)
+ -- access deprecated functions
+ local function curbuf_depr(method, ...)
+ return request('buffer_'..method, 0, ...)
+ end
+
+
describe('line_count, insert and del_line', function()
it('works', function()
- eq(1, curbuf('line_count'))
- curbuf('insert', -1, {'line'})
- eq(2, curbuf('line_count'))
- curbuf('insert', -1, {'line'})
- eq(3, curbuf('line_count'))
- curbuf('del_line', -1)
- eq(2, curbuf('line_count'))
- curbuf('del_line', -1)
- curbuf('del_line', -1)
+ eq(1, curbuf_depr('line_count'))
+ curbuf_depr('insert', -1, {'line'})
+ eq(2, curbuf_depr('line_count'))
+ curbuf_depr('insert', -1, {'line'})
+ eq(3, curbuf_depr('line_count'))
+ curbuf_depr('del_line', -1)
+ eq(2, curbuf_depr('line_count'))
+ curbuf_depr('del_line', -1)
+ curbuf_depr('del_line', -1)
-- There's always at least one line
- eq(1, curbuf('line_count'))
+ eq(1, curbuf_depr('line_count'))
end)
end)
describe('{get,set,del}_line', function()
it('works', function()
- eq('', curbuf('get_line', 0))
- curbuf('set_line', 0, 'line1')
- eq('line1', curbuf('get_line', 0))
- curbuf('set_line', 0, 'line2')
- eq('line2', curbuf('get_line', 0))
- curbuf('del_line', 0)
- eq('', curbuf('get_line', 0))
+ eq('', curbuf_depr('get_line', 0))
+ curbuf_depr('set_line', 0, 'line1')
+ eq('line1', curbuf_depr('get_line', 0))
+ curbuf_depr('set_line', 0, 'line2')
+ eq('line2', curbuf_depr('get_line', 0))
+ curbuf_depr('del_line', 0)
+ eq('', curbuf_depr('get_line', 0))
end)
it('get_line: out-of-bounds is an error', function()
- curbuf('set_line', 0, 'line1.a')
- eq(1, curbuf('line_count')) -- sanity
- eq(false, pcall(curbuf, 'get_line', 1))
- eq(false, pcall(curbuf, 'get_line', -2))
+ curbuf_depr('set_line', 0, 'line1.a')
+ eq(1, curbuf_depr('line_count')) -- sanity
+ eq(false, pcall(curbuf_depr, 'get_line', 1))
+ eq(false, pcall(curbuf_depr, 'get_line', -2))
end)
it('set_line, del_line: out-of-bounds is an error', function()
- curbuf('set_line', 0, 'line1.a')
- eq(false, pcall(curbuf, 'set_line', 1, 'line1.b'))
- eq(false, pcall(curbuf, 'set_line', -2, 'line1.b'))
- eq(false, pcall(curbuf, 'del_line', 2))
- eq(false, pcall(curbuf, 'del_line', -3))
+ curbuf_depr('set_line', 0, 'line1.a')
+ eq(false, pcall(curbuf_depr, 'set_line', 1, 'line1.b'))
+ eq(false, pcall(curbuf_depr, 'set_line', -2, 'line1.b'))
+ eq(false, pcall(curbuf_depr, 'del_line', 2))
+ eq(false, pcall(curbuf_depr, 'del_line', -3))
end)
it('can handle NULs', function()
- curbuf('set_line', 0, 'ab\0cd')
- eq('ab\0cd', curbuf('get_line', 0))
+ curbuf_depr('set_line', 0, 'ab\0cd')
+ eq('ab\0cd', curbuf_depr('get_line', 0))
end)
end)
describe('{get,set}_line_slice', function()
it('get_line_slice: out-of-bounds returns empty array', function()
- curbuf('set_line_slice', 0, 0, true, true, {'a', 'b', 'c'})
- eq({'a', 'b', 'c'}, curbuf('get_line_slice', 0, 2, true, true)) --sanity
-
- eq({}, curbuf('get_line_slice', 2, 3, false, true))
- eq({}, curbuf('get_line_slice', 3, 9, true, true))
- eq({}, curbuf('get_line_slice', 3, -1, true, true))
- eq({}, curbuf('get_line_slice', -3, -4, false, true))
- eq({}, curbuf('get_line_slice', -4, -5, true, true))
+ curbuf_depr('set_line_slice', 0, 0, true, true, {'a', 'b', 'c'})
+ eq({'a', 'b', 'c'}, curbuf_depr('get_line_slice', 0, 2, true, true)) --sanity
+
+ eq({}, curbuf_depr('get_line_slice', 2, 3, false, true))
+ eq({}, curbuf_depr('get_line_slice', 3, 9, true, true))
+ eq({}, curbuf_depr('get_line_slice', 3, -1, true, true))
+ eq({}, curbuf_depr('get_line_slice', -3, -4, false, true))
+ eq({}, curbuf_depr('get_line_slice', -4, -5, true, true))
end)
it('set_line_slice: out-of-bounds extends past end', function()
- curbuf('set_line_slice', 0, 0, true, true, {'a', 'b', 'c'})
- eq({'a', 'b', 'c'}, curbuf('get_line_slice', 0, 2, true, true)) --sanity
-
- eq({'c'}, curbuf('get_line_slice', -1, 4, true, true))
- eq({'a', 'b', 'c'}, curbuf('get_line_slice', 0, 5, true, true))
- curbuf('set_line_slice', 4, 5, true, true, {'d'})
- eq({'a', 'b', 'c', 'd'}, curbuf('get_line_slice', 0, 5, true, true))
- curbuf('set_line_slice', -4, -5, true, true, {'e'})
- eq({'e', 'a', 'b', 'c', 'd'}, curbuf('get_line_slice', 0, 5, true, true))
+ curbuf_depr('set_line_slice', 0, 0, true, true, {'a', 'b', 'c'})
+ eq({'a', 'b', 'c'}, curbuf_depr('get_line_slice', 0, 2, true, true)) --sanity
+
+ eq({'c'}, curbuf_depr('get_line_slice', -1, 4, true, true))
+ eq({'a', 'b', 'c'}, curbuf_depr('get_line_slice', 0, 5, true, true))
+ curbuf_depr('set_line_slice', 4, 5, true, true, {'d'})
+ eq({'a', 'b', 'c', 'd'}, curbuf_depr('get_line_slice', 0, 5, true, true))
+ curbuf_depr('set_line_slice', -4, -5, true, true, {'e'})
+ eq({'e', 'a', 'b', 'c', 'd'}, curbuf_depr('get_line_slice', 0, 5, true, true))
end)
it('works', function()
- eq({''}, curbuf('get_line_slice', 0, -1, true, true))
+ eq({''}, curbuf_depr('get_line_slice', 0, -1, true, true))
-- Replace buffer
- curbuf('set_line_slice', 0, -1, true, true, {'a', 'b', 'c'})
- eq({'a', 'b', 'c'}, curbuf('get_line_slice', 0, -1, true, true))
- eq({'b', 'c'}, curbuf('get_line_slice', 1, -1, true, true))
- eq({'b'}, curbuf('get_line_slice', 1, 2, true, false))
- eq({}, curbuf('get_line_slice', 1, 1, true, false))
- eq({'a', 'b'}, curbuf('get_line_slice', 0, -1, true, false))
- eq({'b'}, curbuf('get_line_slice', 1, -1, true, false))
- eq({'b', 'c'}, curbuf('get_line_slice', -2, -1, true, true))
- curbuf('set_line_slice', 1, 2, true, false, {'a', 'b', 'c'})
- eq({'a', 'a', 'b', 'c', 'c'}, curbuf('get_line_slice', 0, -1, true, true))
- curbuf('set_line_slice', -1, -1, true, true, {'a', 'b', 'c'})
+ curbuf_depr('set_line_slice', 0, -1, true, true, {'a', 'b', 'c'})
+ eq({'a', 'b', 'c'}, curbuf_depr('get_line_slice', 0, -1, true, true))
+ eq({'b', 'c'}, curbuf_depr('get_line_slice', 1, -1, true, true))
+ eq({'b'}, curbuf_depr('get_line_slice', 1, 2, true, false))
+ eq({}, curbuf_depr('get_line_slice', 1, 1, true, false))
+ eq({'a', 'b'}, curbuf_depr('get_line_slice', 0, -1, true, false))
+ eq({'b'}, curbuf_depr('get_line_slice', 1, -1, true, false))
+ eq({'b', 'c'}, curbuf_depr('get_line_slice', -2, -1, true, true))
+ curbuf_depr('set_line_slice', 1, 2, true, false, {'a', 'b', 'c'})
+ eq({'a', 'a', 'b', 'c', 'c'}, curbuf_depr('get_line_slice', 0, -1, true, true))
+ curbuf_depr('set_line_slice', -1, -1, true, true, {'a', 'b', 'c'})
eq({'a', 'a', 'b', 'c', 'a', 'b', 'c'},
- curbuf('get_line_slice', 0, -1, true, true))
- curbuf('set_line_slice', 0, -3, true, false, {})
- eq({'a', 'b', 'c'}, curbuf('get_line_slice', 0, -1, true, true))
- curbuf('set_line_slice', 0, -1, true, true, {})
- eq({''}, curbuf('get_line_slice', 0, -1, true, true))
+ curbuf_depr('get_line_slice', 0, -1, true, true))
+ curbuf_depr('set_line_slice', 0, -3, true, false, {})
+ eq({'a', 'b', 'c'}, curbuf_depr('get_line_slice', 0, -1, true, true))
+ curbuf_depr('set_line_slice', 0, -1, true, true, {})
+ eq({''}, curbuf_depr('get_line_slice', 0, -1, true, true))
end)
end)
@@ -286,7 +292,7 @@ describe('buffer_* functions', function()
describe('get_mark', function()
it('works', function()
- curbuf('insert', -1, {'a', 'bit of', 'text'})
+ curbuf('set_lines', -1, -1, true, {'a', 'bit of', 'text'})
curwin('set_cursor', {3, 4})
nvim('command', 'mark V')
eq({3, 0}, curbuf('get_mark', 'V'))
diff --git a/test/functional/api/server_requests_spec.lua b/test/functional/api/server_requests_spec.lua
index 6fe87a358c..b668b5ba86 100644
--- a/test/functional/api/server_requests_spec.lua
+++ b/test/functional/api/server_requests_spec.lua
@@ -163,11 +163,11 @@ describe('server -> client', function()
end)
it('can communicate buffers, tabpages, and windows', function()
- eq({3}, eval("rpcrequest(vim, 'vim_get_tabpages')"))
+ eq({1}, eval("rpcrequest(vim, 'vim_get_tabpages')"))
eq({1}, eval("rpcrequest(vim, 'vim_get_windows')"))
local buf = eval("rpcrequest(vim, 'vim_get_buffers')")[1]
- eq(2, buf)
+ eq(1, buf)
eval("rpcnotify(vim, 'buffer_set_line', "..buf..", 0, 'SOME TEXT')")
nvim('command', "call rpcrequest(vim, 'vim_eval', '0')") -- wait
diff --git a/test/functional/api/vim_spec.lua b/test/functional/api/vim_spec.lua
index 848935fc0f..351094567a 100644
--- a/test/functional/api/vim_spec.lua
+++ b/test/functional/api/vim_spec.lua
@@ -7,6 +7,7 @@ local ok, nvim_async, feed = helpers.ok, helpers.nvim_async, helpers.feed
local os_name = helpers.os_name
local meths = helpers.meths
local funcs = helpers.funcs
+local request = helpers.request
describe('vim_* functions', function()
before_each(clear)
@@ -41,6 +42,10 @@ describe('vim_* functions', function()
eq(1, nvim('eval',"matcharg(1) == ['', '']"))
eq({'', ''}, nvim('eval','matcharg(1)'))
end)
+
+ it('works under deprecated name', function()
+ eq(2, request("vim_eval", "1+1"))
+ end)
end)
describe('call_function', function()
@@ -298,4 +303,11 @@ describe('vim_* functions', function()
eq(false, status)
ok(err:match('Invalid option name') ~= nil)
end)
+
+ it("doesn't leak memory on incorrect argument types", function()
+ local status, err = pcall(nvim, 'change_directory',{'not', 'a', 'dir'})
+ eq(false, status)
+ ok(err:match(': Wrong type for argument 1, expecting String') ~= nil)
+ end)
+
end)
diff --git a/test/functional/eval/api_functions_spec.lua b/test/functional/eval/api_functions_spec.lua
new file mode 100644
index 0000000000..d88f6977f1
--- /dev/null
+++ b/test/functional/eval/api_functions_spec.lua
@@ -0,0 +1,148 @@
+local helpers = require('test.functional.helpers')(after_each)
+local Screen = require('test.functional.ui.screen')
+local lfs = require('lfs')
+local neq, eq, execute = helpers.neq, helpers.eq, helpers.execute
+local clear, curbufmeths = helpers.clear, helpers.curbufmeths
+local exc_exec, expect, eval = helpers.exc_exec, helpers.expect, helpers.eval
+local insert = helpers.insert
+
+describe('api functions', function()
+ before_each(clear)
+
+ it("work", function()
+ execute("call nvim_command('let g:test = 1')")
+ eq(1, eval("nvim_get_var('test')"))
+
+ local buf = eval("nvim_get_current_buffer()")
+ execute("call nvim_buf_set_lines("..buf..", 0, -1, v:true, ['aa', 'bb'])")
+ expect([[
+ aa
+ bb]])
+
+ execute("call nvim_win_set_cursor(0, [1, 1])")
+ execute("call nvim_input('ax<esc>')")
+ expect([[
+ aax
+ bb]])
+ end)
+
+ it("throw errors for invalid arguments", function()
+ local err = exc_exec('call nvim_get_current_buffer("foo")')
+ eq('Vim(call):E118: Too many arguments for function: nvim_get_current_buffer', err)
+
+ err = exc_exec('call nvim_set_option("hlsearch")')
+ eq('Vim(call):E119: Not enough arguments for function: nvim_set_option', err)
+
+ err = exc_exec('call nvim_buf_set_lines(1, 0, -1, [], ["list"])')
+ eq('Vim(call):Wrong type for argument 4, expecting Boolean', err)
+
+ err = exc_exec('call nvim_buf_set_lines(0, 0, -1, v:true, "string")')
+ eq('Vim(call):Wrong type for argument 5, expecting ArrayOf(String)', err)
+
+ err = exc_exec('call nvim_buf_get_number("0")')
+ eq('Vim(call):Wrong type for argument 1, expecting Buffer', err)
+
+ err = exc_exec('call nvim_buf_line_count(17)')
+ eq('Vim(call):Invalid buffer id', err)
+ end)
+
+
+ it("use buffer numbers and windows ids as handles", function()
+ local screen = Screen.new(40, 8)
+ screen:attach()
+ local bnr = eval("bufnr('')")
+ local bhnd = eval("nvim_get_current_buffer()")
+ local wid = eval("win_getid()")
+ local whnd = eval("nvim_get_current_window()")
+ eq(bnr, bhnd)
+ eq(wid, whnd)
+
+ execute("new") -- creates new buffer and new window
+ local bnr2 = eval("bufnr('')")
+ local bhnd2 = eval("nvim_get_current_buffer()")
+ local wid2 = eval("win_getid()")
+ local whnd2 = eval("nvim_get_current_window()")
+ eq(bnr2, bhnd2)
+ eq(wid2, whnd2)
+ neq(bnr, bnr2)
+ neq(wid, wid2)
+ -- 0 is synonymous to the current buffer
+ eq(bnr2, eval("nvim_buf_get_number(0)"))
+
+ execute("bn") -- show old buffer in new window
+ eq(bnr, eval("nvim_get_current_buffer()"))
+ eq(bnr, eval("bufnr('')"))
+ eq(bnr, eval("nvim_buf_get_number(0)"))
+ eq(wid2, eval("win_getid()"))
+ eq(whnd2, eval("nvim_get_current_window()"))
+ end)
+
+ it("get_lines and set_lines use NL to represent NUL", function()
+ curbufmeths.set_lines(0, -1, true, {"aa\0", "b\0b"})
+ eq({'aa\n', 'b\nb'}, eval("nvim_buf_get_lines(0, 0, -1, 1)"))
+
+ execute('call nvim_buf_set_lines(0, 1, 2, v:true, ["xx", "\\nyy"])')
+ eq({'aa\0', 'xx', '\0yy'}, curbufmeths.get_lines(0, -1, 1))
+ end)
+
+ it("that are FUNC_ATTR_NOEVAL cannot be called", function()
+ -- Deprecated vim_ prefix is not exported.
+ local err = exc_exec('call vim_get_current_buffer("foo")')
+ eq('Vim(call):E117: Unknown function: vim_get_current_buffer', err)
+
+ -- Deprecated buffer_ prefix is not exported.
+ err = exc_exec('call buffer_line_count(0)')
+ eq('Vim(call):E117: Unknown function: buffer_line_count', err)
+
+ -- Functions deprecated before the api functions became available
+ -- in vimscript are not exported.
+ err = exc_exec('call buffer_get_line(0, 1)')
+ eq('Vim(call):E117: Unknown function: buffer_get_line', err)
+
+ -- some api functions are only useful from a msgpack-rpc channel
+ err = exc_exec('call nvim_subscribe("fancyevent")')
+ eq('Vim(call):E117: Unknown function: nvim_subscribe', err)
+ end)
+
+ it('have metadata accessible with api_info()', function()
+ local api_keys = eval("sort(keys(api_info()))")
+ eq({'error_types', 'functions', 'types'}, api_keys)
+ end)
+
+ it('are highlighted by vim.vim syntax file', function()
+ if lfs.attributes("build/runtime/syntax/vim/generated.vim",'uid') == nil then
+ pending("runtime was not built, skipping test")
+ return
+ end
+ local screen = Screen.new(40, 8)
+ screen:attach()
+ screen:set_default_attr_ids({
+ [1] = {bold = true, foreground = Screen.colors.Brown},
+ [2] = {foreground = Screen.colors.DarkCyan},
+ [3] = {foreground = Screen.colors.SlateBlue},
+ [4] = {foreground = Screen.colors.Fuchsia},
+ [5] = {bold = true, foreground = Screen.colors.Blue},
+ })
+
+ execute("set ft=vim")
+ execute("let &rtp='build/runtime/,'.&rtp")
+ execute("syntax on")
+ insert([[
+ call bufnr('%')
+ call nvim_input('typing...')
+ call not_a_function(42)]])
+
+ screen:expect([[
+ {1:call} {2:bufnr}{3:(}{4:'%'}{3:)} |
+ {1:call} {2:nvim_input}{3:(}{4:'typing...'}{3:)} |
+ {1:call} not_a_function{3:(}{4:42}{3:^)} |
+ {5:~ }|
+ {5:~ }|
+ {5:~ }|
+ {5:~ }|
+ |
+ ]])
+ screen:detach()
+ end)
+
+end)
diff --git a/test/functional/helpers.lua b/test/functional/helpers.lua
index 8dca4c5bbe..65da278f9e 100644
--- a/test/functional/helpers.lua
+++ b/test/functional/helpers.lua
@@ -133,11 +133,11 @@ local function stop()
end
local function nvim_command(cmd)
- request('vim_command', cmd)
+ request('nvim_command', cmd)
end
local function nvim_eval(expr)
- return request('vim_eval', expr)
+ return request('nvim_eval', expr)
end
local os_name = (function()
@@ -157,12 +157,12 @@ local os_name = (function()
end)()
local function nvim_call(name, ...)
- return request('vim_call_function', name, {...})
+ return request('nvim_call_function', name, {...})
end
local function nvim_feed(input)
while #input > 0 do
- local written = request('vim_input', input)
+ local written = request('nvim_input', input)
input = input:sub(written + 1)
end
end
@@ -339,7 +339,7 @@ local function source(code)
end
local function nvim(method, ...)
- return request('vim_'..method, ...)
+ return request('nvim_'..method, ...)
end
local function ui(method, ...)
@@ -347,27 +347,26 @@ local function ui(method, ...)
end
local function nvim_async(method, ...)
- session:notify('vim_'..method, ...)
+ session:notify('nvim_'..method, ...)
end
local function buffer(method, ...)
- return request('buffer_'..method, ...)
+ return request('nvim_buf_'..method, ...)
end
local function window(method, ...)
- return request('window_'..method, ...)
+ return request('nvim_win_'..method, ...)
end
local function tabpage(method, ...)
- return request('tabpage_'..method, ...)
+ return request('nvim_tabpage_'..method, ...)
end
local function curbuf(method, ...)
- local buf = nvim('get_current_buffer')
if not method then
- return buf
+ return nvim('get_current_buffer')
end
- return buffer(method, buf, ...)
+ return buffer(method, 0, ...)
end
local function wait()
@@ -387,19 +386,17 @@ local function curbuf_contents()
end
local function curwin(method, ...)
- local win = nvim('get_current_window')
if not method then
- return win
+ return nvim('get_current_window')
end
- return window(method, win, ...)
+ return window(method, 0, ...)
end
local function curtab(method, ...)
- local tab = nvim('get_current_tabpage')
if not method then
- return tab
+ return nvim('get_current_tabpage')
end
- return tabpage(method, tab, ...)
+ return tabpage(method, 0, ...)
end
local function expect(contents)
diff --git a/test/functional/plugin/shada_spec.lua b/test/functional/plugin/shada_spec.lua
index 2595f22929..b1209a22e9 100644
--- a/test/functional/plugin/shada_spec.lua
+++ b/test/functional/plugin/shada_spec.lua
@@ -2463,17 +2463,17 @@ describe('ftplugin/shada.vim', function()
nvim_command('setlocal filetype=shada')
funcs.setline(1, ' Replacement with timestamp ' .. epoch)
nvim_feed('ggA:\027')
- eq('Replacement with timestamp ' .. epoch .. ':', curbuf('get_line', 0))
+ eq('Replacement with timestamp ' .. epoch .. ':', curbuf('get_lines', 0, 1, true)[1])
nvim_feed('o-\027')
- eq(' -', curbuf('get_line', 1))
+ eq({' -'}, curbuf('get_lines', 1, 2, true))
nvim_feed('ggO+\027')
- eq('+', curbuf('get_line', 0))
+ eq({'+'}, curbuf('get_lines', 0, 1, true))
nvim_feed('GO*\027')
- eq(' *', curbuf('get_line', 2))
+ eq({' *'}, curbuf('get_lines', 2, 3, true))
nvim_feed('ggO /\027')
- eq(' /', curbuf('get_line', 0))
+ eq({' /'}, curbuf('get_lines', 0, 1, true))
nvim_feed('ggOx\027')
- eq('x', curbuf('get_line', 0))
+ eq({'x'}, curbuf('get_lines', 0, 1, true))
end)
end)
diff --git a/test/functional/shada/buffers_spec.lua b/test/functional/shada/buffers_spec.lua
index 6694e736dc..01952560d6 100644
--- a/test/functional/shada/buffers_spec.lua
+++ b/test/functional/shada/buffers_spec.lua
@@ -80,9 +80,9 @@ describe('ShaDa support code', function()
it('does not dump unnamed buffers', function()
set_additional_cmd('set shada+=% hidden')
reset()
- curbufmeths.set_line(0, 'foo')
+ curbufmeths.set_lines(0, 1, true, {'foo'})
nvim_command('enew')
- curbufmeths.set_line(0, 'bar')
+ curbufmeths.set_lines(0, 1, true, {'bar'})
eq(2, funcs.bufnr('$'))
nvim_command('qall!')
reset()
diff --git a/test/functional/viml/function_spec.lua b/test/functional/viml/function_spec.lua
index f0a4406593..776e760aaf 100644
--- a/test/functional/viml/function_spec.lua
+++ b/test/functional/viml/function_spec.lua
@@ -2,7 +2,6 @@ local helpers = require('test.functional.helpers')(after_each)
local clear = helpers.clear
local eq = helpers.eq
-local eval = helpers.eval
local exc_exec = helpers.exc_exec
describe('Up to MAX_FUNC_ARGS arguments are handled by', function()
@@ -28,11 +27,3 @@ describe('Up to MAX_FUNC_ARGS arguments are handled by', function()
eq('Vim(call):E740: Too many arguments for function rpcnotify', ret)
end)
end)
-
-describe('api_info()', function()
- before_each(clear)
- it('has the right keys', function()
- local api_keys = eval("sort(keys(api_info()))")
- eq({'error_types', 'functions', 'types'}, api_keys)
- end)
-end)
diff --git a/test/unit/buffer_spec.lua b/test/unit/buffer_spec.lua
index 317c9be6e7..49a4d84279 100644
--- a/test/unit/buffer_spec.lua
+++ b/test/unit/buffer_spec.lua
@@ -87,7 +87,7 @@ describe('buffer functions', function()
it('should find exact matches', function()
local buf = buflist_new(path1, buffer.BLN_LISTED)
- eq(buf.b_fnum, buflist_findpat(path1, ONLY_LISTED))
+ eq(buf.handle, buflist_findpat(path1, ONLY_LISTED))
close_buffer(NULL, buf, buffer.DOBUF_WIPE, 0)
end)
@@ -97,9 +97,9 @@ describe('buffer functions', function()
local buf2 = buflist_new(path2, buffer.BLN_LISTED)
local buf3 = buflist_new(path3, buffer.BLN_LISTED)
- eq(buf1.b_fnum, buflist_findpat("test", ONLY_LISTED))
- eq(buf2.b_fnum, buflist_findpat("file", ONLY_LISTED))
- eq(buf3.b_fnum, buflist_findpat("path", ONLY_LISTED))
+ eq(buf1.handle, buflist_findpat("test", ONLY_LISTED))
+ eq(buf2.handle, buflist_findpat("file", ONLY_LISTED))
+ eq(buf3.handle, buflist_findpat("path", ONLY_LISTED))
close_buffer(NULL, buf1, buffer.DOBUF_WIPE, 0)
close_buffer(NULL, buf2, buffer.DOBUF_WIPE, 0)
@@ -113,7 +113,7 @@ describe('buffer functions', function()
local buf3 = buflist_new(path3, buffer.BLN_LISTED)
-- Then: buf2 is the buffer that is found
- eq(buf2.b_fnum, buflist_findpat("test", ONLY_LISTED))
+ eq(buf2.handle, buflist_findpat("test", ONLY_LISTED))
--}
--{ When: We close buf2
@@ -123,7 +123,7 @@ describe('buffer functions', function()
local buf1 = buflist_new(path1, buffer.BLN_LISTED)
-- Then: buf3 is found since 'file' appears at the end of the name
- eq(buf3.b_fnum, buflist_findpat("file", ONLY_LISTED))
+ eq(buf3.handle, buflist_findpat("file", ONLY_LISTED))
--}
close_buffer(NULL, buf1, buffer.DOBUF_WIPE, 0)
@@ -135,7 +135,7 @@ describe('buffer functions', function()
local buf2 = buflist_new(path2, buffer.BLN_LISTED)
local buf3 = buflist_new(path3, buffer.BLN_LISTED)
- eq(buf3.b_fnum, buflist_findpat("_test_", ONLY_LISTED))
+ eq(buf3.handle, buflist_findpat("_test_", ONLY_LISTED))
close_buffer(NULL, buf1, buffer.DOBUF_WIPE, 0)
close_buffer(NULL, buf2, buffer.DOBUF_WIPE, 0)
@@ -147,7 +147,7 @@ describe('buffer functions', function()
local buf3 = buflist_new(path3, buffer.BLN_LISTED)
-- Then: We should find the buffer when it is given a unique pattern
- eq(buf3.b_fnum, buflist_findpat("_test_", ONLY_LISTED))
+ eq(buf3.handle, buflist_findpat("_test_", ONLY_LISTED))
--}
--{ When: We unlist the buffer
@@ -157,7 +157,7 @@ describe('buffer functions', function()
eq(-1, buflist_findpat("_test_", ONLY_LISTED))
-- And: It should find the buffer when including unlisted buffers
- eq(buf3.b_fnum, buflist_findpat("_test_", ALLOW_UNLISTED))
+ eq(buf3.handle, buflist_findpat("_test_", ALLOW_UNLISTED))
--}
--{ When: We wipe the buffer
@@ -175,7 +175,7 @@ describe('buffer functions', function()
local buf2 = buflist_new(path2, buffer.BLN_LISTED)
-- Then: The first buffer is preferred when both are listed
- eq(buf1.b_fnum, buflist_findpat("test", ONLY_LISTED))
+ eq(buf1.handle, buflist_findpat("test", ONLY_LISTED))
--}
--{ When: The first buffer is unlisted
@@ -183,13 +183,13 @@ describe('buffer functions', function()
-- Then: The second buffer is preferred because
-- unlisted buffers are not allowed
- eq(buf2.b_fnum, buflist_findpat("test", ONLY_LISTED))
+ eq(buf2.handle, buflist_findpat("test", ONLY_LISTED))
--}
--{ When: We allow unlisted buffers
-- Then: The second buffer is still preferred
-- because listed buffers are preferred to unlisted
- eq(buf2.b_fnum, buflist_findpat("test", ALLOW_UNLISTED))
+ eq(buf2.handle, buflist_findpat("test", ALLOW_UNLISTED))
--}
--{ When: We unlist the second buffer
@@ -198,7 +198,7 @@ describe('buffer functions', function()
-- Then: The first buffer is preferred again
-- because buf1 matches better which takes precedence
-- when both buffers have the same listing status.
- eq(buf1.b_fnum, buflist_findpat("test", ALLOW_UNLISTED))
+ eq(buf1.handle, buflist_findpat("test", ALLOW_UNLISTED))
-- And: Neither buffer is returned when ignoring unlisted
eq(-1, buflist_findpat("test", ONLY_LISTED))