wundo_spec.lua 964 B

12345678910111213141516171819202122232425262728293031
  1. -- Specs for :wundo and underlying functions
  2. local helpers = require('test.functional.helpers')(after_each)
  3. local command, clear, eval, spawn, nvim_prog, set_session =
  4. helpers.command, helpers.clear, helpers.eval, helpers.spawn,
  5. helpers.nvim_prog, helpers.set_session
  6. describe(':wundo', function()
  7. before_each(clear)
  8. after_each(function()
  9. os.remove(eval('getcwd()') .. '/foo')
  10. end)
  11. it('safely fails on new, non-empty buffer', function()
  12. command('normal! iabc')
  13. command('wundo foo') -- This should not segfault. #1027
  14. --TODO: check messages for error message
  15. end)
  16. end)
  17. describe('u_* functions', function()
  18. it('safely fail on new, non-empty buffer', function()
  19. local session = spawn({nvim_prog, '-u', 'NONE', '-i', 'NONE', '--embed',
  20. '-c', 'set undodir=. undofile'})
  21. set_session(session)
  22. command('echo "True"') -- Should not error out due to crashed Neovim
  23. session:close()
  24. end)
  25. end)