summaryrefslogtreecommitdiff
path: root/src/testdir/vim9.vim
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2021-08-12 19:27:57 +0200
committerBram Moolenaar <Bram@vim.org>2021-08-12 19:27:57 +0200
commitef98257593a0abf1300d0f70358dc45a70a62580 (patch)
treeb54637016b2993dd37b4abda8cc4d8b03673719f /src/testdir/vim9.vim
parentbd77aa92744d79f3ba69aee713739ec17da474f6 (diff)
downloadvim-git-ef98257593a0abf1300d0f70358dc45a70a62580.tar.gz
patch 8.2.3335: Vim9: not enough tests run with Vim9v8.2.3335
Problem: Vim9: not enough tests run with Vim9. Solution: Run a few more tests in Vim9 script and :def function. Fix that items(), keys() and values9) return zero for a NULL dict. Make join() return an empty string for a NULL list. Make sort() return an empty list for a NULL list.
Diffstat (limited to 'src/testdir/vim9.vim')
-rw-r--r--src/testdir/vim9.vim14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/testdir/vim9.vim b/src/testdir/vim9.vim
index 879d918be..742a0932b 100644
--- a/src/testdir/vim9.vim
+++ b/src/testdir/vim9.vim
@@ -172,6 +172,9 @@ def CheckTransLegacySuccess(lines: list<string>)
var legacylines = lines->mapnew((_, v) =>
v->substitute('\<VAR\>', 'let', 'g')
->substitute('\<LET\>', 'let', 'g')
+ ->substitute('\<LSTART\>', '{', 'g')
+ ->substitute('\<LMIDDLE\>', '->', 'g')
+ ->substitute('\<LEND\>', '}', 'g')
->substitute('#"', ' "', 'g'))
CheckLegacySuccess(legacylines)
enddef
@@ -181,7 +184,10 @@ enddef
def CheckTransDefSuccess(lines: list<string>)
var vim9lines = lines->mapnew((_, v) =>
v->substitute('\<VAR\>', 'var', 'g')
- ->substitute('\<LET ', '', 'g'))
+ ->substitute('\<LET ', '', 'g')
+ ->substitute('\<LSTART\>', '(', 'g')
+ ->substitute('\<LMIDDLE\>', ') =>', 'g')
+ ->substitute(' *\<LEND\> *', '', 'g'))
CheckDefSuccess(vim9lines)
enddef
@@ -190,7 +196,10 @@ enddef
def CheckTransVim9Success(lines: list<string>)
var vim9lines = lines->mapnew((_, v) =>
v->substitute('\<VAR\>', 'var', 'g')
- ->substitute('\<LET ', '', 'g'))
+ ->substitute('\<LET ', '', 'g')
+ ->substitute('\<LSTART\>', '(', 'g')
+ ->substitute('\<LMIDDLE\>', ') =>', 'g')
+ ->substitute(' *\<LEND\> *', '', 'g'))
CheckScriptSuccess(['vim9script'] + vim9lines)
enddef
@@ -198,6 +207,7 @@ enddef
" Use 'VAR' for a declaration.
" Use 'LET' for an assignment
" Use ' #"' for a comment
+" Use LSTART arg LMIDDLE expr LEND for lambda
def CheckLegacyAndVim9Success(lines: list<string>)
CheckTransLegacySuccess(lines)
CheckTransDefSuccess(lines)