mirror of
https://github.com/neovim/neovim.git
synced 2025-09-11 13:58:18 +00:00
functests: Check that minimal distance between commands works
This commit is contained in:
@@ -12,7 +12,7 @@ local function check_nofunc(fname)
|
|||||||
eq(0, funcs.exists('*' .. fname))
|
eq(0, funcs.exists('*' .. fname))
|
||||||
end
|
end
|
||||||
|
|
||||||
local function check_func(fname, body)
|
local function check_func(fname, body, indent)
|
||||||
if type(body) == 'number' then
|
if type(body) == 'number' then
|
||||||
body = ('return %i'):format(body)
|
body = ('return %i'):format(body)
|
||||||
end
|
end
|
||||||
@@ -20,7 +20,9 @@ local function check_func(fname, body)
|
|||||||
|
|
||||||
function %s()%s
|
function %s()%s
|
||||||
endfunction]]
|
endfunction]]
|
||||||
), 3):format(fname, body and ('\n1 ' .. body) or ''),
|
), 3):format(
|
||||||
|
fname,
|
||||||
|
body and ('\n1' .. (' '):rep(2 + (indent or 8)) .. body) or ''),
|
||||||
redir_exec('function ' .. fname))
|
redir_exec('function ' .. fname))
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -172,5 +174,48 @@ describe(':endfunction', function()
|
|||||||
check_func('F3', 'echo 3')
|
check_func('F3', 'echo 3')
|
||||||
check_func('F4', 'echo 4')
|
check_func('F4', 'echo 4')
|
||||||
end)
|
end)
|
||||||
|
it('allows running multiple commands with only one character in between',
|
||||||
|
function()
|
||||||
|
eq('\n3', redir_exec(dedent([[
|
||||||
|
function! F1()
|
||||||
|
echo 3
|
||||||
|
endfunction!
|
||||||
|
call F1()]])))
|
||||||
|
check_func('F1', 'echo 3', 2)
|
||||||
|
eq('\n4', redir_exec(dedent([[
|
||||||
|
function F5()
|
||||||
|
echo 4
|
||||||
|
endfunction
|
||||||
|
call F5()]])))
|
||||||
|
check_func('F5', 'echo 4', 2)
|
||||||
|
eq('\n5', redir_exec(dedent([[
|
||||||
|
function F6()
|
||||||
|
echo 5
|
||||||
|
endfunction " TEST
|
||||||
|
call F6()]])))
|
||||||
|
check_func('F6', 'echo 5', 2)
|
||||||
|
eq('\n6', redir_exec(dedent([[
|
||||||
|
function F7()
|
||||||
|
echo 6
|
||||||
|
endfunction F7
|
||||||
|
call F7()]])))
|
||||||
|
check_func('F7', 'echo 6', 2)
|
||||||
|
eq('\n2\n3\n4', redir_exec(dedent([[
|
||||||
|
function F2()
|
||||||
|
echo 2
|
||||||
|
endfunction F2
|
||||||
|
function F3()
|
||||||
|
echo 3
|
||||||
|
endfunction " F3
|
||||||
|
function! F4()
|
||||||
|
echo 4
|
||||||
|
endfunction!
|
||||||
|
call F2()
|
||||||
|
call F3()
|
||||||
|
call F4()]])))
|
||||||
|
check_func('F2', 'echo 2', 2)
|
||||||
|
check_func('F3', 'echo 3', 2)
|
||||||
|
check_func('F4', 'echo 4', 2)
|
||||||
|
end)
|
||||||
end)
|
end)
|
||||||
-- vim: foldmarker=▶,▲
|
-- vim: foldmarker=▶,▲
|
||||||
|
Reference in New Issue
Block a user