1" Utility functions for testing vim9 script 2 3" Check that "lines" inside ":def" has no error. 4func CheckDefSuccess(lines) 5 call writefile(['def Func()'] + a:lines + ['enddef', 'defcompile'], 'Xdef') 6 so Xdef 7 call Func() 8 call delete('Xdef') 9endfunc 10 11" Check that "lines" inside ":def" results in an "error" message. 12func CheckDefFailure(lines, error) 13 call writefile(['def Func()'] + a:lines + ['enddef', 'defcompile'], 'Xdef') 14 call assert_fails('so Xdef', a:error, a:lines) 15 call delete('Xdef') 16endfunc 17 18" Check that "lines" inside ":def" results in an "error" message when executed. 19func CheckDefExecFailure(lines, error) 20 call writefile(['def Func()'] + a:lines + ['enddef'], 'Xdef') 21 so Xdef 22 call assert_fails('call Func()', a:error, a:lines) 23 call delete('Xdef') 24endfunc 25 26def CheckScriptFailure(lines: list<string>, error: string) 27 writefile(lines, 'Xdef') 28 assert_fails('so Xdef', error, lines) 29 delete('Xdef') 30enddef 31 32def CheckScriptSuccess(lines: list<string>) 33 writefile(lines, 'Xdef') 34 so Xdef 35 delete('Xdef') 36enddef 37