3
3
local Screen = require('test.functional.ui.screen')
4
4
local clear, nvim, eq, neq = helpers.clear, helpers.nvim, helpers.eq, helpers.neq
5
5
local ok, nvim_async, feed = helpers.ok, helpers.nvim_async, helpers.feed
6
local os_is_windows = helpers.os_is_windows
6
local os_name = helpers.os_name
8
8
describe('vim_* functions', function()
145
145
describe('replace_termcodes', function()
146
146
it('escapes K_SPECIAL as K_SPECIAL KS_SPECIAL KE_FILLER', function()
147
eq(helpers.nvim('replace_termcodes', '\128', true, true, true), '\128\254X')
147
eq('\128\254X', helpers.nvim('replace_termcodes', '\128', true, true, true))
150
it('leaves non K_SPECIAL string unchanged', function()
151
eq(helpers.nvim('replace_termcodes', 'abc', true, true, true), 'abc')
150
it('leaves non-K_SPECIAL string unchanged', function()
151
eq('abc', helpers.nvim('replace_termcodes', 'abc', true, true, true))
154
154
it('converts <expressions>', function()
155
eq(helpers.nvim('replace_termcodes', '<Leader>', true, true, true), '\\')
155
eq('\\', helpers.nvim('replace_termcodes', '<Leader>', true, true, true))
158
it('converts <LeftMouse> to K_SPECIAL KS_EXTRA KE_LEFTMOUSE', function()
159
-- K_SPECIAL KS_EXTRA KE_LEFTMOUSE
162
eq('\128\253\44', helpers.nvim('replace_termcodes',
163
'<LeftMouse>', true, true, true))