neovim/test/functional/legacy/006_argument_list_spec.lua
Björn Linse 07cc231142 A Mudholland Dr. Recast
The commit summary maybe does not make sense, but calling a function
that does not wait on anything `wait()` makes even less sense.
2020-10-19 21:48:06 +02:00

86 lines
2.0 KiB
Lua
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- Test for autocommand that redefines the argument list, when doing ":all".
local helpers = require('test.functional.helpers')(after_each)
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local command, dedent, eq = helpers.command, helpers.dedent, helpers.eq
local curbuf_contents = helpers.curbuf_contents
local poke_eventloop = helpers.poke_eventloop
describe('argument list', function()
setup(clear)
it('is working', function()
insert([[
start of test file Xxx
this is a test
this is a test
this is a test
this is a test
end of test file Xxx]])
poke_eventloop()
command('au BufReadPost Xxx2 next Xxx2 Xxx1')
command('/^start of')
-- Write test file Xxx1
feed('A1<Esc>:.,/end of/w! Xxx1<cr>')
-- Write test file Xxx2
feed('$r2:.,/end of/w! Xxx2<cr>')
-- Write test file Xxx3
feed('$r3:.,/end of/w! Xxx3<cr>')
poke_eventloop()
-- Redefine arglist; go to Xxx1
command('next! Xxx1 Xxx2 Xxx3')
-- Open window for all args
command('all')
-- Write contents of Xxx1
command('%yank A')
-- Append contents of last window (Xxx1)
feed('')
poke_eventloop()
command('%yank A')
-- should now be in Xxx2
command('rew')
-- Append contents of Xxx2
command('%yank A')
command('%d')
command('0put=@a')
command('$d')
eq(dedent([[
start of test file Xxx1
this is a test
this is a test
this is a test
this is a test
end of test file Xxx
start of test file Xxx1
this is a test
this is a test
this is a test
this is a test
end of test file Xxx
start of test file Xxx2
this is a test
this is a test
this is a test
this is a test
end of test file Xxx]]), curbuf_contents())
end)
teardown(function()
os.remove('Xxx1')
os.remove('Xxx2')
os.remove('Xxx3')
end)
end)