Merge pull request #15516 from bfredl/keyset

refactor(api): Represent option dicts as a structs in C and reduce conversion overhead from lua
This commit is contained in:
Björn Linse
2021-10-03 14:31:53 +02:00
committed by GitHub
22 changed files with 729 additions and 536 deletions

View File

@@ -21,7 +21,7 @@ describe('nvim_get_commands', function()
it('validates input', function()
eq('builtin=true not implemented', pcall_err(meths.get_commands,
{builtin=true}))
eq('unexpected key: foo', pcall_err(meths.get_commands,
eq("Invalid key: 'foo'", pcall_err(meths.get_commands,
{foo='blah'}))
end)

View File

@@ -436,16 +436,16 @@ describe('nvim_set_keymap, nvim_del_keymap', function()
end)
it('error on invalid optnames', function()
eq('Invalid key: silentt',
eq("Invalid key: 'silentt'",
pcall_err(meths.set_keymap, 'n', 'lhs', 'rhs', {silentt = true}))
eq('Invalid key: sidd',
eq("Invalid key: 'sidd'",
pcall_err(meths.set_keymap, 'n', 'lhs', 'rhs', {sidd = false}))
eq('Invalid key: nowaiT',
eq("Invalid key: 'nowaiT'",
pcall_err(meths.set_keymap, 'n', 'lhs', 'rhs', {nowaiT = false}))
end)
it('error on <buffer> option key', function()
eq('Invalid key: buffer',
eq("Invalid key: 'buffer'",
pcall_err(meths.set_keymap, 'n', 'lhs', 'rhs', {buffer = true}))
end)
@@ -454,8 +454,8 @@ describe('nvim_set_keymap, nvim_del_keymap', function()
-- note: need '%' to escape hyphens, which have special meaning in lua
it('throws an error when given non-boolean value for '..opt, function()
local opts = {}
opts[opt] = 2
eq('Gave non-boolean value for an opt: '..opt,
opts[opt] = 'fooo'
eq(opt..' is not a boolean',
pcall_err(meths.set_keymap, 'n', 'lhs', 'rhs', opts))
end)
end

View File

@@ -1119,7 +1119,7 @@ describe('API', function()
describe('nvim_get_context', function()
it('validates args', function()
eq('unexpected key: blah',
eq("Invalid key: 'blah'",
pcall_err(nvim, 'get_context', {blah={}}))
eq('invalid value for key: types',
pcall_err(nvim, 'get_context', {types=42}))