patch 8.2.3841: Vim9: outdated TODO items, disabled tests that work
Problem: Vim9: outdated TODO items, disabled tests that work.
Solution: Remove TODO items, run tests that work now. Check that a dict
item isn't locked.
diff --git a/src/testdir/test_listdict.vim b/src/testdir/test_listdict.vim
index 10cb786..957520b 100644
--- a/src/testdir/test_listdict.vim
+++ b/src/testdir/test_listdict.vim
@@ -743,10 +743,7 @@
unlet d.a
call assert_equal({'b': 100}, d)
END
- " TODO: make this work in a :def function
- "call CheckLegacyAndVim9Success(lines)
- call CheckTransLegacySuccess(lines)
- call CheckTransVim9Success(lines)
+ call CheckLegacyAndVim9Success(lines)
endfunc
" filter() after lock on dict item
@@ -757,10 +754,7 @@
call filter(d, 'v:key != "a"')
call assert_equal({'b': 100}, d)
END
- " TODO: make this work in a :def function
- "call CheckLegacyAndVim9Success(lines)
- call CheckTransLegacySuccess(lines)
- call CheckTransVim9Success(lines)
+ call CheckLegacyAndVim9Success(lines)
endfunc
" map() after lock on dict
@@ -774,6 +768,17 @@
" This won't work in a :def function
call CheckTransLegacySuccess(lines)
call CheckTransVim9Success(lines)
+
+ " For a :def function use a global dict.
+ let lines =<< trim END
+ let g:thedict = {'a': 77, 'b': 88}
+ lockvar 1 g:thedict
+ def Delkey()
+ unlet g:thedict.a
+ enddef
+ call Delkey()
+ END
+ call CheckScriptFailure(lines, 'E741:')
endfunc
" No extend() after lock on dict item