patch 8.2.4395: some code lines not covered by tests
Problem: Some code lines not covered by tests.
Solution: Add a few more test cases. Fix getting more than one error for
invalid assignment.
diff --git a/src/testdir/test_vim9_cmd.vim b/src/testdir/test_vim9_cmd.vim
index f80d5a2..10be691 100644
--- a/src/testdir/test_vim9_cmd.vim
+++ b/src/testdir/test_vim9_cmd.vim
@@ -1355,6 +1355,13 @@
v9.CheckDefFailure(lines, 'E1146:', 1)
lines =<< trim END
+ if 0
+ d.key = 'asdf'
+ endif
+ END
+ v9.CheckDefSuccess(lines)
+
+ lines =<< trim END
d['key'] = 'asdf'
END
v9.CheckDefFailure(lines, 'E1146:', 1)
@@ -1621,6 +1628,11 @@
s/text/\=['aaa', 'bbb', 'ccc']/
assert_equal(['some aaa', 'bbb', 'ccc', ' here'], getline(1, '$'))
bwipe!
+
+ # inside "if 0" substitute is ignored
+ if 0
+ s/a/\=nothing/ and | some more
+ endif
enddef
def Test_redir_to_var()
@@ -1664,6 +1676,12 @@
v9.CheckDefFailure(lines, 'E1089:')
lines =<< trim END
+ var text: string
+ redir => text
+ END
+ v9.CheckDefFailure(lines, 'E1185:')
+
+ lines =<< trim END
var ls = 'asdf'
redir => ls[1]
redir END