aboutsummaryrefslogtreecommitdiff
path: root/test/functional/legacy/005_bufleave_delete_buffer.lua
diff options
context:
space:
mode:
Diffstat (limited to 'test/functional/legacy/005_bufleave_delete_buffer.lua')
-rw-r--r--test/functional/legacy/005_bufleave_delete_buffer.lua71
1 files changed, 71 insertions, 0 deletions
diff --git a/test/functional/legacy/005_bufleave_delete_buffer.lua b/test/functional/legacy/005_bufleave_delete_buffer.lua
new file mode 100644
index 0000000000..e8459ad4a7
--- /dev/null
+++ b/test/functional/legacy/005_bufleave_delete_buffer.lua
@@ -0,0 +1,71 @@
+-- Test for autocommand that deletes the current buffer on BufLeave event.
+-- Also test deleting the last buffer, should give a new, empty buffer.
+
+local helpers = require('test.functional.helpers')
+local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
+local execute, expect = helpers.execute, helpers.expect
+
+describe('test5', function()
+ setup(clear)
+
+ 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]])
+
+ execute('w! Xxx0')
+ execute('au BufLeave Xxx bwipe')
+ execute('/start of')
+
+ -- Write test file Xxx.
+ execute('.,/end of/w! Xxx')
+
+ -- Split to Xxx.
+ execute('sp Xxx')
+
+ -- Delete buffer Xxx, now we're back here.
+ execute('bwipe')
+ feed('G?this is a<cr>')
+ feed('othis is some more text<esc>')
+
+ -- Append some text to this file.
+
+ -- Write current file contents.
+ execute('?start?,$yank A')
+
+ -- Delete alternate buffer.
+ execute('bwipe test.out')
+ execute('au bufleave test5.in bwipe')
+
+ -- Delete current buffer, get an empty one.
+ execute('bwipe!')
+ feed('ithis is another test line<esc>:yank A<cr>')
+
+ -- Output results
+ execute('%d')
+ execute('0put a')
+ execute('1d | $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)