Mercurial > vim
view src/testdir/vim9.vim @ 22409:5736172d64a6 v8.2.1753
patch 8.2.1753: Vim9: crash when using import at script level
Commit: https://github.com/vim/vim/commit/f6a44f714a383a69db05cb47e26abffd966cd6a5
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Sep 27 13:51:14 2020 +0200
patch 8.2.1753: Vim9: crash when using import at script level
Problem: Vim9: crash when using import at script level.
Solution: Give a "not implemented yet" error. (closes https://github.com/vim/vim/issues/7026)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 27 Sep 2020 14:00:04 +0200 |
parents | da851f3b6a0b |
children | ef8a3177edc1 |
line wrap: on
line source
" Utility functions for testing vim9 script " Check that "lines" inside ":def" has no error. func CheckDefSuccess(lines) call writefile(['def Func()'] + a:lines + ['enddef', 'defcompile'], 'Xdef') so Xdef call Func() call delete('Xdef') endfunc " Check that "lines" inside ":def" results in an "error" message. " If "lnum" is given check that the error is reported for this line. " Add a line before and after to make it less likely that the line number is " accidentally correct. func CheckDefFailure(lines, error, lnum = -3) call writefile(['def Func()', '# comment'] + a:lines + ['#comment', 'enddef', 'defcompile'], 'Xdef') call assert_fails('so Xdef', a:error, a:lines, a:lnum + 1) call delete('Xdef') endfunc " Check that "lines" inside ":def" results in an "error" message when executed. " If "lnum" is given check that the error is reported for this line. " Add a line before and after to make it less likely that the line number is " accidentally correct. func CheckDefExecFailure(lines, error, lnum = -3) call writefile(['def Func()', '# comment'] + a:lines + ['#comment', 'enddef'], 'Xdef') so Xdef call assert_fails('call Func()', a:error, a:lines, a:lnum + 1) call delete('Xdef') endfunc def CheckScriptFailure(lines: list<string>, error: string, lnum = -3) writefile(lines, 'Xdef') assert_fails('so Xdef', error, lines, lnum) delete('Xdef') enddef def CheckScriptSuccess(lines: list<string>) writefile(lines, 'Xdef') so Xdef delete('Xdef') enddef def CheckDefAndScriptSuccess(lines: list<string>) CheckDefSuccess(lines) CheckScriptSuccess(['vim9script'] + lines) enddef " Check that a command fails both when used in a :def function and when used " in Vim9 script. def CheckDefAndScriptFailure(lines: list<string>, error: string, lnum = -3) CheckDefFailure(lines, error, lnum) CheckScriptFailure(['vim9script'] + lines, error, lnum + 1) enddef