1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
-- Test for autocommand that deletes the current buffer on BufLeave event.
-- Also test deleting the last buffer, should give a new, empty buffer.
local n = require('test.functional.testnvim')()
local clear, feed, insert = n.clear, n.feed, n.insert
local command, expect = n.command, n.expect
local poke_eventloop = n.poke_eventloop
describe('test5', function()
setup(clear)
-- luacheck: ignore 621 (Indentation)
it('is working', function()
insert([[
start of test file Xxx
vim: set noai :
this is a test
this is a test
this is a test
this is a test
end of test file Xxx]])
command('w! Xxx0')
command('au BufLeave Xxx bwipe')
command('/start of')
-- Write test file Xxx.
command('.,/end of/w! Xxx')
-- Split to Xxx.
command('sp Xxx')
-- Delete buffer Xxx, now we're back here.
command('bwipe')
feed('G?this is a<cr>')
feed('othis is some more text<esc>')
poke_eventloop()
-- Append some text to this file.
-- Write current file contents.
command('?start?,$yank A')
-- Delete current buffer, get an empty one.
command('bwipe!')
-- Append an extra line to the output register.
feed('ithis is another test line<esc>:yank A<cr>')
poke_eventloop()
-- Output results
command('%d')
command('0put a')
command('$d')
-- Assert buffer contents.
expect([[
start of test file Xxx
vim: set noai :
this is a test
this is a test
this is a test
this is a test
this is some more text
end of test file Xxx
this is another test line]])
end)
teardown(function()
os.remove('Xxx')
os.remove('Xxx0')
end)
end)
|