mirror of
https://github.com/neovim/neovim.git
synced 2025-09-07 03:48:18 +00:00
test: rename (meths, funcs) -> (api, fn)
This commit is contained in:
@@ -3,7 +3,7 @@ local helpers = require('test.functional.helpers')(after_each)
|
||||
|
||||
local exc_exec = helpers.exc_exec
|
||||
local remove_trace = helpers.remove_trace
|
||||
local funcs = helpers.funcs
|
||||
local fn = helpers.fn
|
||||
local clear = helpers.clear
|
||||
local eval = helpers.eval
|
||||
local NIL = vim.NIL
|
||||
@@ -17,39 +17,39 @@ describe('luaeval(vim.api.…)', function()
|
||||
describe('with channel_id and buffer handle', function()
|
||||
describe('nvim_buf_get_lines', function()
|
||||
it('works', function()
|
||||
funcs.setline(1, { 'abc', 'def', 'a\nb', 'ttt' })
|
||||
eq({ 'a\000b' }, funcs.luaeval('vim.api.nvim_buf_get_lines(1, 2, 3, false)'))
|
||||
fn.setline(1, { 'abc', 'def', 'a\nb', 'ttt' })
|
||||
eq({ 'a\000b' }, fn.luaeval('vim.api.nvim_buf_get_lines(1, 2, 3, false)'))
|
||||
end)
|
||||
end)
|
||||
describe('nvim_buf_set_lines', function()
|
||||
it('works', function()
|
||||
funcs.setline(1, { 'abc', 'def', 'a\nb', 'ttt' })
|
||||
eq(NIL, funcs.luaeval('vim.api.nvim_buf_set_lines(1, 1, 2, false, {"b\\0a"})'))
|
||||
fn.setline(1, { 'abc', 'def', 'a\nb', 'ttt' })
|
||||
eq(NIL, fn.luaeval('vim.api.nvim_buf_set_lines(1, 1, 2, false, {"b\\0a"})'))
|
||||
eq(
|
||||
{ 'abc', 'b\000a', 'a\000b', 'ttt' },
|
||||
funcs.luaeval('vim.api.nvim_buf_get_lines(1, 0, 4, false)')
|
||||
fn.luaeval('vim.api.nvim_buf_get_lines(1, 0, 4, false)')
|
||||
)
|
||||
end)
|
||||
end)
|
||||
end)
|
||||
describe('with errors', function()
|
||||
it('transforms API error from nvim_buf_set_lines into lua error', function()
|
||||
funcs.setline(1, { 'abc', 'def', 'a\nb', 'ttt' })
|
||||
fn.setline(1, { 'abc', 'def', 'a\nb', 'ttt' })
|
||||
eq(
|
||||
{ false, "'replacement string' item contains newlines" },
|
||||
funcs.luaeval('{pcall(vim.api.nvim_buf_set_lines, 1, 1, 2, false, {"b\\na"})}')
|
||||
fn.luaeval('{pcall(vim.api.nvim_buf_set_lines, 1, 1, 2, false, {"b\\na"})}')
|
||||
)
|
||||
end)
|
||||
|
||||
it('transforms API error from nvim_win_set_cursor into lua error', function()
|
||||
eq(
|
||||
{ false, 'Argument "pos" must be a [row, col] array' },
|
||||
funcs.luaeval('{pcall(vim.api.nvim_win_set_cursor, 0, {1, 2, 3})}')
|
||||
fn.luaeval('{pcall(vim.api.nvim_win_set_cursor, 0, {1, 2, 3})}')
|
||||
)
|
||||
-- Used to produce a memory leak due to a bug in nvim_win_set_cursor
|
||||
eq(
|
||||
{ false, 'Invalid window id: -1' },
|
||||
funcs.luaeval('{pcall(vim.api.nvim_win_set_cursor, -1, {1, 2, 3})}')
|
||||
fn.luaeval('{pcall(vim.api.nvim_win_set_cursor, -1, {1, 2, 3})}')
|
||||
)
|
||||
end)
|
||||
|
||||
@@ -58,7 +58,7 @@ describe('luaeval(vim.api.…)', function()
|
||||
function()
|
||||
eq(
|
||||
{ false, 'Argument "pos" must be a [row, col] array' },
|
||||
funcs.luaeval('{pcall(vim.api.nvim_win_set_cursor, 0, {"b\\na"})}')
|
||||
fn.luaeval('{pcall(vim.api.nvim_win_set_cursor, 0, {"b\\na"})}')
|
||||
)
|
||||
end
|
||||
)
|
||||
@@ -74,20 +74,20 @@ describe('luaeval(vim.api.…)', function()
|
||||
]=])')
|
||||
]==])]===]):gsub('\n', ' ')
|
||||
)
|
||||
eq(1, funcs.luaeval(str))
|
||||
eq(1, fn.luaeval(str))
|
||||
end)
|
||||
|
||||
it('correctly converts from API objects', function()
|
||||
eq(1, funcs.luaeval('vim.api.nvim_eval("1")'))
|
||||
eq('1', funcs.luaeval([[vim.api.nvim_eval('"1"')]]))
|
||||
eq('Blobby', funcs.luaeval('vim.api.nvim_eval("0z426c6f626279")'))
|
||||
eq({}, funcs.luaeval('vim.api.nvim_eval("[]")'))
|
||||
eq({}, funcs.luaeval('vim.api.nvim_eval("{}")'))
|
||||
eq(1, funcs.luaeval('vim.api.nvim_eval("1.0")'))
|
||||
eq('\000', funcs.luaeval('vim.api.nvim_eval("0z00")'))
|
||||
eq(true, funcs.luaeval('vim.api.nvim_eval("v:true")'))
|
||||
eq(false, funcs.luaeval('vim.api.nvim_eval("v:false")'))
|
||||
eq(NIL, funcs.luaeval('vim.api.nvim_eval("v:null")'))
|
||||
eq(1, fn.luaeval('vim.api.nvim_eval("1")'))
|
||||
eq('1', fn.luaeval([[vim.api.nvim_eval('"1"')]]))
|
||||
eq('Blobby', fn.luaeval('vim.api.nvim_eval("0z426c6f626279")'))
|
||||
eq({}, fn.luaeval('vim.api.nvim_eval("[]")'))
|
||||
eq({}, fn.luaeval('vim.api.nvim_eval("{}")'))
|
||||
eq(1, fn.luaeval('vim.api.nvim_eval("1.0")'))
|
||||
eq('\000', fn.luaeval('vim.api.nvim_eval("0z00")'))
|
||||
eq(true, fn.luaeval('vim.api.nvim_eval("v:true")'))
|
||||
eq(false, fn.luaeval('vim.api.nvim_eval("v:false")'))
|
||||
eq(NIL, fn.luaeval('vim.api.nvim_eval("v:null")'))
|
||||
|
||||
eq(0, eval([[type(luaeval('vim.api.nvim_eval("1")'))]]))
|
||||
eq(1, eval([[type(luaeval('vim.api.nvim_eval("''1''")'))]]))
|
||||
@@ -99,25 +99,25 @@ describe('luaeval(vim.api.…)', function()
|
||||
eq(6, eval([[type(luaeval('vim.api.nvim_eval("v:false")'))]]))
|
||||
eq(7, eval([[type(luaeval('vim.api.nvim_eval("v:null")'))]]))
|
||||
|
||||
eq({ foo = 42 }, funcs.luaeval([[vim.api.nvim_eval('{"foo": 42}')]]))
|
||||
eq({ 42 }, funcs.luaeval([[vim.api.nvim_eval('[42]')]]))
|
||||
eq({ foo = 42 }, fn.luaeval([[vim.api.nvim_eval('{"foo": 42}')]]))
|
||||
eq({ 42 }, fn.luaeval([[vim.api.nvim_eval('[42]')]]))
|
||||
|
||||
eq(
|
||||
{ foo = { bar = 42 }, baz = 50 },
|
||||
funcs.luaeval([[vim.api.nvim_eval('{"foo": {"bar": 42}, "baz": 50}')]])
|
||||
fn.luaeval([[vim.api.nvim_eval('{"foo": {"bar": 42}, "baz": 50}')]])
|
||||
)
|
||||
eq({ { 42 }, {} }, funcs.luaeval([=[vim.api.nvim_eval('[[42], []]')]=]))
|
||||
eq({ { 42 }, {} }, fn.luaeval([=[vim.api.nvim_eval('[[42], []]')]=]))
|
||||
end)
|
||||
|
||||
it('correctly converts to API objects', function()
|
||||
eq(1, funcs.luaeval('vim.api.nvim__id(1)'))
|
||||
eq('1', funcs.luaeval('vim.api.nvim__id("1")'))
|
||||
eq({ 1 }, funcs.luaeval('vim.api.nvim__id({1})'))
|
||||
eq({ foo = 1 }, funcs.luaeval('vim.api.nvim__id({foo=1})'))
|
||||
eq(1.5, funcs.luaeval('vim.api.nvim__id(1.5)'))
|
||||
eq(true, funcs.luaeval('vim.api.nvim__id(true)'))
|
||||
eq(false, funcs.luaeval('vim.api.nvim__id(false)'))
|
||||
eq(NIL, funcs.luaeval('vim.api.nvim__id(nil)'))
|
||||
eq(1, fn.luaeval('vim.api.nvim__id(1)'))
|
||||
eq('1', fn.luaeval('vim.api.nvim__id("1")'))
|
||||
eq({ 1 }, fn.luaeval('vim.api.nvim__id({1})'))
|
||||
eq({ foo = 1 }, fn.luaeval('vim.api.nvim__id({foo=1})'))
|
||||
eq(1.5, fn.luaeval('vim.api.nvim__id(1.5)'))
|
||||
eq(true, fn.luaeval('vim.api.nvim__id(true)'))
|
||||
eq(false, fn.luaeval('vim.api.nvim__id(false)'))
|
||||
eq(NIL, fn.luaeval('vim.api.nvim__id(nil)'))
|
||||
|
||||
-- API strings from Blobs can work as NUL-terminated C strings
|
||||
eq(
|
||||
@@ -138,10 +138,10 @@ describe('luaeval(vim.api.…)', function()
|
||||
|
||||
eq(
|
||||
{ foo = 1, bar = { 42, { { baz = true }, 5 } } },
|
||||
funcs.luaeval('vim.api.nvim__id({foo=1, bar={42, {{baz=true}, 5}}})')
|
||||
fn.luaeval('vim.api.nvim__id({foo=1, bar={42, {{baz=true}, 5}}})')
|
||||
)
|
||||
|
||||
eq(true, funcs.luaeval('vim.api.nvim__id(vim.api.nvim__id)(true)'))
|
||||
eq(true, fn.luaeval('vim.api.nvim__id(vim.api.nvim__id)(true)'))
|
||||
eq(
|
||||
42,
|
||||
exec_lua [[
|
||||
@@ -159,30 +159,30 @@ describe('luaeval(vim.api.…)', function()
|
||||
eq(4, eval([[type(luaeval('vim.api.nvim__id({[vim.type_idx]=vim.types.dictionary})'))]]))
|
||||
eq(3, eval([[type(luaeval('vim.api.nvim__id({[vim.type_idx]=vim.types.array})'))]]))
|
||||
|
||||
eq({}, funcs.luaeval('vim.api.nvim__id({[vim.type_idx]=vim.types.array})'))
|
||||
eq({}, fn.luaeval('vim.api.nvim__id({[vim.type_idx]=vim.types.array})'))
|
||||
|
||||
-- Presence of type_idx makes Vim ignore some keys
|
||||
eq(
|
||||
{ 42 },
|
||||
funcs.luaeval(
|
||||
fn.luaeval(
|
||||
'vim.api.nvim__id({[vim.type_idx]=vim.types.array, [vim.val_idx]=10, [5]=1, foo=2, [1]=42})'
|
||||
)
|
||||
)
|
||||
eq(
|
||||
{ foo = 2 },
|
||||
funcs.luaeval(
|
||||
fn.luaeval(
|
||||
'vim.api.nvim__id({[vim.type_idx]=vim.types.dictionary, [vim.val_idx]=10, [5]=1, foo=2, [1]=42})'
|
||||
)
|
||||
)
|
||||
eq(
|
||||
10,
|
||||
funcs.luaeval(
|
||||
fn.luaeval(
|
||||
'vim.api.nvim__id({[vim.type_idx]=vim.types.float, [vim.val_idx]=10, [5]=1, foo=2, [1]=42})'
|
||||
)
|
||||
)
|
||||
eq(
|
||||
{},
|
||||
funcs.luaeval(
|
||||
fn.luaeval(
|
||||
'vim.api.nvim__id({[vim.type_idx]=vim.types.array, [vim.val_idx]=10, [5]=1, foo=2})'
|
||||
)
|
||||
)
|
||||
@@ -191,34 +191,34 @@ describe('luaeval(vim.api.…)', function()
|
||||
it('correctly converts arrays with type_idx to API objects', function()
|
||||
eq(3, eval([[type(luaeval('vim.api.nvim__id_array({[vim.type_idx]=vim.types.array})'))]]))
|
||||
|
||||
eq({}, funcs.luaeval('vim.api.nvim__id_array({[vim.type_idx]=vim.types.array})'))
|
||||
eq({}, fn.luaeval('vim.api.nvim__id_array({[vim.type_idx]=vim.types.array})'))
|
||||
|
||||
eq(
|
||||
{ 42 },
|
||||
funcs.luaeval(
|
||||
fn.luaeval(
|
||||
'vim.api.nvim__id_array({[vim.type_idx]=vim.types.array, [vim.val_idx]=10, [5]=1, foo=2, [1]=42})'
|
||||
)
|
||||
)
|
||||
eq(
|
||||
{ { foo = 2 } },
|
||||
funcs.luaeval(
|
||||
fn.luaeval(
|
||||
'vim.api.nvim__id_array({{[vim.type_idx]=vim.types.dictionary, [vim.val_idx]=10, [5]=1, foo=2, [1]=42}})'
|
||||
)
|
||||
)
|
||||
eq(
|
||||
{ 10 },
|
||||
funcs.luaeval(
|
||||
fn.luaeval(
|
||||
'vim.api.nvim__id_array({{[vim.type_idx]=vim.types.float, [vim.val_idx]=10, [5]=1, foo=2, [1]=42}})'
|
||||
)
|
||||
)
|
||||
eq(
|
||||
{},
|
||||
funcs.luaeval(
|
||||
fn.luaeval(
|
||||
'vim.api.nvim__id_array({[vim.type_idx]=vim.types.array, [vim.val_idx]=10, [5]=1, foo=2})'
|
||||
)
|
||||
)
|
||||
|
||||
eq({}, funcs.luaeval('vim.api.nvim__id_array({})'))
|
||||
eq({}, fn.luaeval('vim.api.nvim__id_array({})'))
|
||||
eq(3, eval([[type(luaeval('vim.api.nvim__id_array({})'))]]))
|
||||
end)
|
||||
|
||||
@@ -228,36 +228,36 @@ describe('luaeval(vim.api.…)', function()
|
||||
eval([[type(luaeval('vim.api.nvim__id_dictionary({[vim.type_idx]=vim.types.dictionary})'))]])
|
||||
)
|
||||
|
||||
eq({}, funcs.luaeval('vim.api.nvim__id_dictionary({[vim.type_idx]=vim.types.dictionary})'))
|
||||
eq({}, fn.luaeval('vim.api.nvim__id_dictionary({[vim.type_idx]=vim.types.dictionary})'))
|
||||
|
||||
eq(
|
||||
{ v = { 42 } },
|
||||
funcs.luaeval(
|
||||
fn.luaeval(
|
||||
'vim.api.nvim__id_dictionary({v={[vim.type_idx]=vim.types.array, [vim.val_idx]=10, [5]=1, foo=2, [1]=42}})'
|
||||
)
|
||||
)
|
||||
eq(
|
||||
{ foo = 2 },
|
||||
funcs.luaeval(
|
||||
fn.luaeval(
|
||||
'vim.api.nvim__id_dictionary({[vim.type_idx]=vim.types.dictionary, [vim.val_idx]=10, [5]=1, foo=2, [1]=42})'
|
||||
)
|
||||
)
|
||||
eq(
|
||||
{ v = 10 },
|
||||
funcs.luaeval(
|
||||
fn.luaeval(
|
||||
'vim.api.nvim__id_dictionary({v={[vim.type_idx]=vim.types.float, [vim.val_idx]=10, [5]=1, foo=2, [1]=42}})'
|
||||
)
|
||||
)
|
||||
eq(
|
||||
{ v = {} },
|
||||
funcs.luaeval(
|
||||
fn.luaeval(
|
||||
'vim.api.nvim__id_dictionary({v={[vim.type_idx]=vim.types.array, [vim.val_idx]=10, [5]=1, foo=2}})'
|
||||
)
|
||||
)
|
||||
|
||||
-- If API requests dictionary, then empty table will be the one. This is not
|
||||
-- the case normally because empty table is an empty array.
|
||||
eq({}, funcs.luaeval('vim.api.nvim__id_dictionary({})'))
|
||||
eq({}, fn.luaeval('vim.api.nvim__id_dictionary({})'))
|
||||
eq(4, eval([[type(luaeval('vim.api.nvim__id_dictionary({})'))]]))
|
||||
end)
|
||||
|
||||
@@ -384,13 +384,11 @@ describe('luaeval(vim.api.…)', function()
|
||||
end)
|
||||
|
||||
it('accepts any value as API Boolean', function()
|
||||
eq('', funcs.luaeval('vim.api.nvim_replace_termcodes("", vim, false, nil)'))
|
||||
eq('', funcs.luaeval('vim.api.nvim_replace_termcodes("", 0, 1.5, "test")'))
|
||||
eq('', fn.luaeval('vim.api.nvim_replace_termcodes("", vim, false, nil)'))
|
||||
eq('', fn.luaeval('vim.api.nvim_replace_termcodes("", 0, 1.5, "test")'))
|
||||
eq(
|
||||
'',
|
||||
funcs.luaeval(
|
||||
'vim.api.nvim_replace_termcodes("", true, {}, {[vim.type_idx]=vim.types.array})'
|
||||
)
|
||||
fn.luaeval('vim.api.nvim_replace_termcodes("", true, {}, {[vim.type_idx]=vim.types.array})')
|
||||
)
|
||||
end)
|
||||
|
||||
|
Reference in New Issue
Block a user