Improve tests

This commit is contained in:
hrsh7th
2022-01-11 12:24:44 +09:00
parent d6aaea47f4
commit 96c392dee3
2 changed files with 17 additions and 4 deletions

View File

@@ -7,7 +7,7 @@ local keymap = {}
---@param keys string ---@param keys string
---@return string ---@return string
keymap.t = function(keys) keymap.t = function(keys)
return (string.gsub(keys, '(<[A-Za-z0-9_%-%[%]%^@]->)', function(match) return (string.gsub(keys, '(<[A-Za-z0-9%-%[%]%^@]->)', function(match)
return vim.api.nvim_eval(string.format([["\%s"]], match)) return vim.api.nvim_eval(string.format([["\%s"]], match))
end)) end))
end end

View File

@@ -7,9 +7,22 @@ describe('keymap', function()
before_each(spec.before) before_each(spec.before)
it('t', function() it('t', function()
assert.are.equal(keymap.t('<Tab>'), vim.api.nvim_replace_termcodes('<Tab>', true, true, true)) for _, key in ipairs({
assert.are.equal(keymap.t('<C-g>u'), vim.api.nvim_replace_termcodes('<C-g>u', true, true, true)) '<F1>',
assert.are.equal(keymap.t('<Cmd>aiueo<CR>'), vim.api.nvim_replace_termcodes('<Cmd>aiueo<CR>', true, true, true)) '<C-a>',
'<C-]>',
'<C-[>',
'<C-^>',
'<C-@>',
'<Tab>',
'<Plug>(example)',
'<C-r>="abc"<CR>',
'<Cmd>normal! ==<CR>',
}) do
assert.are.equal(keymap.t(key), vim.api.nvim_replace_termcodes(key, true, true, true))
assert.are.equal(keymap.t(key .. key), vim.api.nvim_replace_termcodes(key .. key, true, true, true))
assert.are.equal(keymap.t(key .. key .. key), vim.api.nvim_replace_termcodes(key .. key .. key, true, true, true))
end
end) end)
it('to_keymap', function() it('to_keymap', function()