patch 8.2.0292: Vim9: CHECKNR and CHECKTYPE instructions not tested
Problem: Vim9: CHECKNR and CHECKTYPE instructions not tested.
Solution: Add tests.
diff --git a/src/testdir/test_vim9_expr.vim b/src/testdir/test_vim9_expr.vim
index fabbd9b..312d633 100644
--- a/src/testdir/test_vim9_expr.vim
+++ b/src/testdir/test_vim9_expr.vim
@@ -781,6 +781,11 @@
call CheckDefExecFailure("echo s:doesnt_exist", 'E121:')
call CheckDefExecFailure("echo g:doesnt_exist", 'E121:')
+
+ call CheckDefExecFailure("let x = +g:astring", 'E1030:')
+ call CheckDefExecFailure("let x = +g:ablob", 'E974:')
+ call CheckDefExecFailure("let x = +g:alist", 'E745:')
+ call CheckDefExecFailure("let x = +g:adict", 'E728:')
endfunc
let g:Funcrefs = [function('add')]
diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim
index 6ae4273..f7205b3 100644
--- a/src/testdir/test_vim9_script.vim
+++ b/src/testdir/test_vim9_script.vim
@@ -114,9 +114,16 @@
return 123
enddef
+let g:notNumber = 'string'
+
+def ReturnGlobal(): number
+ return g:notNumber
+enddef
+
def Test_return_string()
assert_equal('string', ReturnString())
assert_equal(123, ReturnNumber())
+ assert_fails('call ReturnGlobal()', 'E1029: Expected number but got string')
enddef
func Increment()
diff --git a/src/version.c b/src/version.c
index 3cab8b0..8aca276 100644
--- a/src/version.c
+++ b/src/version.c
@@ -739,6 +739,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 292,
+/**/
291,
/**/
290,