aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/testdir
diff options
context:
space:
mode:
authorZyX <kp-pav@yandex.ru>2017-07-31 13:13:14 +0300
committerZyX <kp-pav@yandex.ru>2017-07-31 13:13:14 +0300
commita356d3c89567dc13c5de70d33e5bcc534bf4c6cb (patch)
tree7e0b7c3902641378056e9c21abb6a1122d2c5dd7 /src/nvim/testdir
parentfbe60af538aa6c723779ae7a816de845460619ae (diff)
parent27356de2697ca542ded05ea6c2017a3ca738084f (diff)
downloadrneovim-a356d3c89567dc13c5de70d33e5bcc534bf4c6cb.tar.gz
rneovim-a356d3c89567dc13c5de70d33e5bcc534bf4c6cb.tar.bz2
rneovim-a356d3c89567dc13c5de70d33e5bcc534bf4c6cb.zip
Merge branch 'master' into colored-cmdline
Diffstat (limited to 'src/nvim/testdir')
-rw-r--r--src/nvim/testdir/Makefile4
-rw-r--r--src/nvim/testdir/test_autocmd.vim58
2 files changed, 32 insertions, 30 deletions
diff --git a/src/nvim/testdir/Makefile b/src/nvim/testdir/Makefile
index 9ba4e4b3c1..4449a0bc80 100644
--- a/src/nvim/testdir/Makefile
+++ b/src/nvim/testdir/Makefile
@@ -132,7 +132,7 @@ $(SCRIPTS) $(SCRIPTS_GUI): $(NVIM_PRG) test1.out
RM_ON_RUN := test.out X* viminfo
RM_ON_START := test.ok
-RUN_VIM := VIMRUNTIME=$(SCRIPTSOURCE); export VIMRUNTIME; $(TOOL) $(NVIM_PRG) -u unix.vim -U NONE -i viminfo --noplugin -s dotest.in
+RUN_VIM := VIMRUNTIME=$(SCRIPTSOURCE); export VIMRUNTIME; $(TOOL) $(NVIM_PRG) -u unix.vim -U NONE -i viminfo --headless --noplugin -s dotest.in
clean:
-rm -rf *.out \
@@ -201,7 +201,7 @@ nolog:
# New style of tests uses Vim script with assert calls. These are easier
# to write and a lot easier to read and debug.
# Limitation: Only works with the +eval feature.
-RUN_VIMTEST = VIMRUNTIME=$(SCRIPTSOURCE); export VIMRUNTIME; $(TOOL) $(NVIM_PRG) -u unix.vim -U NONE --noplugin
+RUN_VIMTEST = VIMRUNTIME=$(SCRIPTSOURCE); export VIMRUNTIME; $(TOOL) $(NVIM_PRG) -u unix.vim -U NONE --headless --noplugin
newtests: newtestssilent
@/bin/sh -c "if test -f messages && grep -q 'FAILED' messages; then \
diff --git a/src/nvim/testdir/test_autocmd.vim b/src/nvim/testdir/test_autocmd.vim
index c4110eba94..835df42a10 100644
--- a/src/nvim/testdir/test_autocmd.vim
+++ b/src/nvim/testdir/test_autocmd.vim
@@ -342,7 +342,10 @@ func Test_BufEnter()
call mkdir('Xdir')
split Xdir
call assert_equal('+++', g:val)
- bwipe!
+
+ " On MS-Windows we can't edit the directory, make sure we wipe the right
+ " buffer.
+ bwipe! Xdir
call delete('Xdir', 'd')
au! BufEnter
@@ -351,40 +354,37 @@ endfunc
" Closing a window might cause an endless loop
" E814 for older Vims
function Test_autocmd_bufwipe_in_SessLoadPost()
- if has('win32')
- throw 'Skipped: test hangs on MS-Windows'
- endif
tabnew
set noswapfile
- let g:bufnr=bufnr('%')
mksession!
- let content=['set nocp noswapfile',
+ let content = ['set nocp noswapfile',
\ 'let v:swapchoice="e"',
\ 'augroup test_autocmd_sessionload',
\ 'autocmd!',
- \ 'autocmd SessionLoadPost * 4bw!|qall!',
+ \ 'autocmd SessionLoadPost * 4bw!',
\ 'augroup END',
+ \ '',
+ \ 'func WriteErrors()',
+ \ ' call writefile([execute("messages")], "Xerrors")',
+ \ 'endfunc',
+ \ 'au VimLeave * call WriteErrors()',
\ ]
call writefile(content, 'Xvimrc')
- let a=system(v:progpath. ' --headless -i NONE -u Xvimrc --noplugins -S Session.vim')
- call assert_match('E814', a)
+ call system(v:progpath. ' --headless -i NONE -u Xvimrc --noplugins -S Session.vim -c cq')
+ let errors = join(readfile('Xerrors'))
+ call assert_match('E814', errors)
- unlet! g:bufnr
set swapfile
- for file in ['Session.vim', 'Xvimrc']
+ for file in ['Session.vim', 'Xvimrc', 'Xerrors']
call delete(file)
endfor
endfunc
" SEGV occurs in older versions.
function Test_autocmd_bufwipe_in_SessLoadPost2()
- if has('win32')
- throw 'Skipped: test hangs on MS-Windows'
- endif
tabnew
set noswapfile
- let g:bufnr=bufnr('%')
mksession!
let content = ['set nocp noswapfile',
@@ -399,22 +399,24 @@ function Test_autocmd_bufwipe_in_SessLoadPost2()
\ ' exec ''bwipeout '' . b',
\ ' endif',
\ ' endfor',
- \ 'redraw!',
- \ 'echon "SessionLoadPost DONE"',
- \ 'qall!',
+ \ ' echomsg "SessionLoadPost DONE"',
\ 'endfunction',
- \ 'au SessionLoadPost * call DeleteInactiveBufs()']
+ \ 'au SessionLoadPost * call DeleteInactiveBufs()',
+ \ '',
+ \ 'func WriteErrors()',
+ \ ' call writefile([execute("messages")], "Xerrors")',
+ \ 'endfunc',
+ \ 'au VimLeave * call WriteErrors()',
+ \ ]
call writefile(content, 'Xvimrc')
- let a=system(v:progpath. ' --headless -i NONE -u Xvimrc --noplugins -S Session.vim')
- " this probably only matches on unix
- if has("unix")
- call assert_notmatch('Caught deadly signal SEGV', a)
- endif
- call assert_match('SessionLoadPost DONE', a)
-
- unlet! g:bufnr
+ call system(v:progpath. ' --headless -i NONE -u Xvimrc --noplugins -S Session.vim -c cq')
+ let errors = join(readfile('Xerrors'))
+ " This probably only ever matches on unix.
+ call assert_notmatch('Caught deadly signal SEGV', errors)
+ call assert_match('SessionLoadPost DONE', errors)
+
set swapfile
- for file in ['Session.vim', 'Xvimrc']
+ for file in ['Session.vim', 'Xvimrc', 'Xerrors']
call delete(file)
endfor
endfunc