mirror of
https://github.com/neovim/neovim.git
synced 2025-10-17 07:16:09 +00:00
vim-patch:8.2.1046: insufficient tests for src/buffer.c (#19903)
Problem: Insufficient tests for src/buffer.c.
Solution: Add more tests. Move comments related tests to a separate file.
(Yegappan Lakshmanan, closes vim/vim#6325)
b7e2483655
This commit is contained in:
59
test/functional/legacy/buffer_spec.lua
Normal file
59
test/functional/legacy/buffer_spec.lua
Normal file
@@ -0,0 +1,59 @@
|
||||
local helpers = require('test.functional.helpers')(after_each)
|
||||
local clear, source = helpers.clear, helpers.source
|
||||
local call, eq, meths = helpers.call, helpers.eq, helpers.meths
|
||||
|
||||
local function expected_empty()
|
||||
eq({}, meths.get_vvar('errors'))
|
||||
end
|
||||
|
||||
describe('buffer', function()
|
||||
before_each(function()
|
||||
clear()
|
||||
meths.ui_attach(80, 24, {})
|
||||
meths.set_option('hidden', false)
|
||||
end)
|
||||
|
||||
it('deleting a modified buffer with :confirm', function()
|
||||
source([[
|
||||
func Test_bdel_with_confirm()
|
||||
new
|
||||
call setline(1, 'test')
|
||||
call assert_fails('bdel', 'E89:')
|
||||
call nvim_input('c')
|
||||
confirm bdel
|
||||
call assert_equal(2, winnr('$'))
|
||||
call assert_equal(1, &modified)
|
||||
call nvim_input('n')
|
||||
confirm bdel
|
||||
call assert_equal(1, winnr('$'))
|
||||
endfunc
|
||||
]])
|
||||
call('Test_bdel_with_confirm')
|
||||
expected_empty()
|
||||
end)
|
||||
|
||||
it('editing another buffer from a modified buffer with :confirm', function()
|
||||
source([[
|
||||
func Test_goto_buf_with_confirm()
|
||||
new Xfile
|
||||
enew
|
||||
call setline(1, 'test')
|
||||
call assert_fails('b Xfile', 'E37:')
|
||||
call nvim_input('c')
|
||||
call assert_fails('confirm b Xfile', 'E37:')
|
||||
call assert_equal(1, &modified)
|
||||
call assert_equal('', @%)
|
||||
call nvim_input('y')
|
||||
call assert_fails('confirm b Xfile', 'E37:')
|
||||
call assert_equal(1, &modified)
|
||||
call assert_equal('', @%)
|
||||
call nvim_input('n')
|
||||
confirm b Xfile
|
||||
call assert_equal('Xfile', @%)
|
||||
close!
|
||||
endfunc
|
||||
]])
|
||||
call('Test_goto_buf_with_confirm')
|
||||
expected_empty()
|
||||
end)
|
||||
end)
|
Reference in New Issue
Block a user