aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/testdir/test_modeline.vim
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/testdir/test_modeline.vim')
-rw-r--r--src/nvim/testdir/test_modeline.vim22
1 files changed, 16 insertions, 6 deletions
diff --git a/src/nvim/testdir/test_modeline.vim b/src/nvim/testdir/test_modeline.vim
index 75fe1d993c..091a833774 100644
--- a/src/nvim/testdir/test_modeline.vim
+++ b/src/nvim/testdir/test_modeline.vim
@@ -1,11 +1,15 @@
+" Tests for parsing the modeline.
+
func Test_modeline_invalid()
- let modeline = &modeline
- set modeline
- call assert_fails('set Xmodeline', 'E518:')
+ " This was reading allocated memory in the past.
+ call writefile(['vi:0', 'nothing'], 'Xmodeline')
+ let modeline = &modeline
+ set modeline
+ call assert_fails('set Xmodeline', 'E518:')
- let &modeline = modeline
- bwipe!
- call delete('Xmodeline')
+ let &modeline = modeline
+ bwipe!
+ call delete('Xmodeline')
endfunc
func Test_modeline_filetype()
@@ -40,6 +44,9 @@ func Test_modeline_syntax()
endfunc
func Test_modeline_keymap()
+ if !has('keymap')
+ return
+ endif
call writefile(['vim: set keymap=greek :', 'nothing'], 'Xmodeline_keymap')
let modeline = &modeline
set modeline
@@ -80,5 +87,8 @@ func Test_modeline_syntax_fails()
endfunc
func Test_modeline_keymap_fails()
+ if !has('keymap')
+ return
+ endif
call s:modeline_fails('keymap', 'keymap=evil$CMD')
endfunc