Mercurial > vim
diff src/testdir/test_viminfo.vim @ 9270:79cb08f0d812 v7.4.1918
commit https://github.com/vim/vim/commit/62f8b4e18014b259bcde4a2845c602b0a44a3714
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Jun 11 15:31:47 2016 +0200
patch 7.4.1918
Problem: Not enough testing for parsing viminfo lines.
Solution: Add test with viminfo lines in bad syntax. Fix memory leak.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 11 Jun 2016 15:45:05 +0200 |
parents | a00e32b5bb39 |
children | 083113d751ff |
line wrap: on
line diff
--- a/src/testdir/test_viminfo.vim +++ b/src/testdir/test_viminfo.vim @@ -201,3 +201,22 @@ func Test_viminfo_encoding() call delete('Xviminfo') endfunc + +func Test_viminfo_bad_syntax() + let lines = [] + call add(lines, '|<') " empty continuation line + call add(lines, '|234234234234234324,nothing') + call add(lines, '|1+"no comma"') + call add(lines, '|1,2,3,4,5,6,7') " too many items + call add(lines, '|1,"string version"') + call add(lines, '|1,>x') " bad continuation line + call add(lines, '|1,"x') " missing quote + call add(lines, '|1,"x\') " trailing backslash + call add(lines, '|1,,,,') "trailing comma + call add(lines, '|1,>234') " trailing continuation line + call writefile(lines, 'Xviminfo') + call assert_fails('rviminfo Xviminfo', 'E685:') + + call delete('Xviminfo') +endfunc +