patch 8.2.0480: Vim9: some code is not tested
Problem: Vim9: some code is not tested.
Solution: Add more tests.
diff --git a/src/testdir/test_vim9_expr.vim b/src/testdir/test_vim9_expr.vim
index 6a03027..f61ff53 100644
--- a/src/testdir/test_vim9_expr.vim
+++ b/src/testdir/test_vim9_expr.vim
@@ -706,9 +706,12 @@
assert_equal(g:list_empty, [])
assert_equal(g:list_empty, [ ])
assert_equal(g:list_mixed, [1, 'b', false])
+ assert_equal('b', g:list_mixed[1])
call CheckDefExecFailure("let x = g:anint[3]", 'E714:')
+ call CheckDefFailure("let x = g:list_mixed[xxx]", 'E1001:')
call CheckDefExecFailure("let x = g:list_mixed['xx']", 'E39:')
+ call CheckDefFailure("let x = g:list_mixed[0", 'E111:')
call CheckDefExecFailure("let x = g:list_empty[3]", 'E684:')
enddef
@@ -739,6 +742,12 @@
call CheckDefExecFailure("let x = g:dict_empty.member", 'E716:')
enddef
+def Test_expr_member()
+ assert_equal(1, g:dict_one.one)
+
+ call CheckDefFailure("let x = g:dict_one.#$!", 'E1002:')
+enddef
+
def Test_expr7_option()
" option
set ts=11
@@ -778,6 +787,30 @@
assert_equal(-6, ---6)
enddef
+def Test_expr7_negate()
+ assert_equal(-99, -99)
+ assert_equal(99, --99)
+ let nr = 88
+ assert_equal(-88, -nr)
+ assert_equal(88, --nr)
+enddef
+
+def Echo(arg): string
+ return arg
+enddef
+
+def s:EchoArg(arg): string
+ return arg
+enddef
+
+def Test_expr7_call()
+ assert_equal('yes', 'yes'->Echo())
+ assert_equal('yes', 'yes'->s:EchoArg())
+
+ call CheckDefFailure("let x = 'yes'->Echo", 'E107:')
+enddef
+
+
def Test_expr7_not()
assert_equal(true, !'')
assert_equal(true, ![])