Mercurial > vim
diff src/testdir/test_vim9_expr.vim @ 24208:7a21b2581dce v8.2.2645
patch 8.2.2645: using inline function is not properly tested
Commit: https://github.com/vim/vim/commit/49f1e9ec3e7f4e1b3572367d02a83c2b6ebbed97
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Mar 22 20:49:02 2021 +0100
patch 8.2.2645: using inline function is not properly tested
Problem: Using inline function is not properly tested.
Solution: Add test cases, esp. for errors. Minor code improvements.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 22 Mar 2021 21:00:03 +0100 |
parents | c50c5464e6dc |
children | bd010982f0be |
line wrap: on
line diff
--- a/src/testdir/test_vim9_expr.vim +++ b/src/testdir/test_vim9_expr.vim @@ -1961,6 +1961,11 @@ def Test_expr7_lambda_block() return 'no' }) assert_equal(['no', 'yes', 'no'], dll) + + sandbox var Safe = (nr: number): number => { + return nr + 7 + } + assert_equal(10, Safe(3)) END CheckDefAndScriptSuccess(lines) @@ -1968,6 +1973,34 @@ def Test_expr7_lambda_block() map([1, 2], (k, v) => { redrawt }) END CheckDefAndScriptFailure(lines, 'E488') + + lines =<< trim END + var Func = (nr: int) => { + echo nr + } + END + CheckDefAndScriptFailure(lines, 'E1010', 1) + + lines =<< trim END + var Func = (nr: number): int => { + return nr + } + END + CheckDefAndScriptFailure(lines, 'E1010', 1) + + lines =<< trim END + var Func = (nr: number): int => { + return nr + END + CheckDefAndScriptFailure(lines, 'E1171', 1) # line nr is function start + + lines =<< trim END + vim9script + var Func = (nr: number): int => { + var ll =<< ENDIT + nothing + END + CheckScriptFailure(lines, 'E1145: Missing heredoc end marker: ENDIT', 2) enddef def NewLambdaWithComments(): func