view src/testdir/test_exit.vim @ 14914:68eba5f83aed

Added tag v8.1.0468 for changeset d4777be849d015a6f339aa4d1545db4e582c0521
author Bram Moolenaar <Bram@vim.org>
date Tue, 09 Oct 2018 22:00:08 +0200
parents 94e638936d3e
children 9c90cf08cfa8
line wrap: on
line source

" Tests for exiting Vim.

source shared.vim

func Test_exiting()
  let after = [
	\ 'au QuitPre * call writefile(["QuitPre"], "Xtestout")',
	\ 'au ExitPre * call writefile(["ExitPre"], "Xtestout", "a")',
	\ 'quit',
	\ ]
  if RunVim([], after, '')
    call assert_equal(['QuitPre', 'ExitPre'], readfile('Xtestout'))
  endif
  call delete('Xtestout')

  let after = [
	\ 'au QuitPre * call writefile(["QuitPre"], "Xtestout")',
	\ 'au ExitPre * call writefile(["ExitPre"], "Xtestout", "a")',
	\ 'help',
	\ 'wincmd w',
	\ 'quit',
	\ ]
  if RunVim([], after, '')
    call assert_equal(['QuitPre', 'ExitPre'], readfile('Xtestout'))
  endif
  call delete('Xtestout')

  let after = [
	\ 'au QuitPre * call writefile(["QuitPre"], "Xtestout")',
	\ 'au ExitPre * call writefile(["ExitPre"], "Xtestout", "a")',
	\ 'split',
	\ 'new',
	\ 'qall',
	\ ]
  if RunVim([], after, '')
    call assert_equal(['QuitPre', 'ExitPre'], readfile('Xtestout'))
  endif
  call delete('Xtestout')

  let after = [
	\ 'au QuitPre * call writefile(["QuitPre"], "Xtestout", "a")',
	\ 'au ExitPre * call writefile(["ExitPre"], "Xtestout", "a")',
	\ 'augroup nasty',
	\ '  au ExitPre * split',
	\ 'augroup END',
	\ 'quit',
	\ 'augroup nasty',
	\ '  au! ExitPre',
	\ 'augroup END',
	\ 'quit',
	\ ]
  if RunVim([], after, '')
    call assert_equal(['QuitPre', 'ExitPre', 'QuitPre', 'ExitPre'],
	  \ readfile('Xtestout'))
  endif
  call delete('Xtestout')
endfunc