diff src/testdir/test_vim9_assign.vim @ 27764:1662d2d2e27b v8.2.4408

patch 8.2.4408: Vim9: some code not covered by tests Commit: https://github.com/vim/vim/commit/ea5c898b5fb60828b0223f258910f84f5c645e63 Author: Bram Moolenaar <Bram@vim.org> Date: Thu Feb 17 14:42:02 2022 +0000 patch 8.2.4408: Vim9: some code not covered by tests Problem: Vim9: some code not covered by tests. Solution: Add a few more tests. Correct error message. Allow unlet on dict with a number key.
author Bram Moolenaar <Bram@vim.org>
date Thu, 17 Feb 2022 15:45:03 +0100
parents 3196066c5795
children 2a394907825d
line wrap: on
line diff
--- a/src/testdir/test_vim9_assign.vim
+++ b/src/testdir/test_vim9_assign.vim
@@ -610,6 +610,12 @@ def Test_assign_index()
     bl[1] = 8
   END
   v9.CheckDefExecAndScriptFailure(lines, ['E1184:', 'E979:'], 2)
+
+  lines =<< trim END
+    g:bl = 'not a blob'
+    g:bl[1 : 2] = 8
+  END
+  v9.CheckDefExecAndScriptFailure(lines, ['E897:', 'E689:'], 2)
 enddef
 
 def Test_init_in_for_loop()
@@ -1231,6 +1237,7 @@ def Test_script_var_default()
         assert_equal(0z, bl)
         assert_equal({}, d)
       enddef
+      Echo()
   END
   v9.CheckScriptSuccess(lines)
 enddef
@@ -2070,9 +2077,10 @@ def Test_unlet()
     ], 'E1081:', 2)
 
   # dict unlet
-  var dd = {a: 1, b: 2, c: 3}
+  var dd = {a: 1, b: 2, c: 3, 4: 4}
   unlet dd['a']
   unlet dd.c
+  unlet dd[4]
   assert_equal({b: 2}, dd)
 
   # list unlet
@@ -2181,6 +2189,11 @@ def Test_unlet()
     'unlet dd[g:alist]',
     ], 'E1105:', 2)
 
+  v9.CheckDefExecFailure([
+    'g:dd = {"a": 1, 2: 2}'
+    'unlet g:dd[0z11]',
+    ], 'E1029:', 2)
+
   # can compile unlet before variable exists
   g:someDict = {key: 'val'}
   var k = 'key'