neovim/test/functional/ex_cmds/arg_spec.lua
dundargoc 052498ed42 test: improve test conventions
Specifically, functions that are run in the context of the test runner
are put in module `test/testutil.lua` while the functions that are run
in the context of the test session are put in
`test/functional/testnvim.lua`.

Closes https://github.com/neovim/neovim/issues/27004.
2024-04-23 18:17:04 +02:00

34 lines
872 B
Lua

local t = require('test.testutil')
local n = require('test.functional.testnvim')()
local eq, command, fn = t.eq, n.command, n.fn
local ok = t.ok
local matches = t.matches
local clear = n.clear
describe(':argument', function()
before_each(function()
clear()
end)
it('does not restart :terminal buffer', function()
command('terminal')
n.feed([[<C-\><C-N>]])
command('argadd')
n.feed([[<C-\><C-N>]])
local bufname_before = fn.bufname('%')
local bufnr_before = fn.bufnr('%')
matches('^term://', bufname_before) -- sanity
command('argument 1')
n.feed([[<C-\><C-N>]])
local bufname_after = fn.bufname('%')
local bufnr_after = fn.bufnr('%')
eq('[' .. bufname_before .. ']', n.eval('trim(execute("args"))'))
ok(fn.line('$') > 1)
eq(bufname_before, bufname_after)
eq(bufnr_before, bufnr_after)
end)
end)