-- Test for autocommand that changes the buffer list, when doing ":ball". local helpers = require('test.functional.helpers') local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert local execute, expect = helpers.execute, helpers.expect describe(':ball', function() setup(clear) it('is working', function() insert([[ start of test file Xxx this is a test this is a test end of test file Xxx]]) execute('w! Xxx0') feed('gg') -- Write test file Xxx1 feed('A1:.,/end of/w! Xxx1') execute('sp Xxx1') execute('close') -- Write test file Xxx2 feed('$r2:.,/end of/w! Xxx2') execute('sp Xxx2') execute('close') -- Write test file Xxx3 feed('$r3:.,/end of/w! Xxx3') execute('sp Xxx3') execute('close') execute('au BufReadPost Xxx2 bwipe') -- Open window for all args, close Xxx2 feed('$r4:ball') -- Write contents of this file execute('%yank A') -- Append contents of second window (Xxx1) feed('') execute('%yank A') -- Append contents of last window (this file) feed('') execute('%yank A') execute('bf') execute('%d') execute('0put=@a') execute('$d') expect([[ start of test file Xxx4 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 end of test file Xxx start of test file Xxx4 this is a test this is a test end of test file Xxx]]) end) teardown(function() os.remove('Xxx0') os.remove('Xxx1') os.remove('Xxx2') os.remove('Xxx3') end) end)