Problem: Vim9: TODO items in tests can be taken care of.
Solution: Update test for now working functionality. (closes #8694)
d.somekey = 'someval'
assert_equal({key: 'value', '123': 'qwerty', somekey: 'someval'}, d)
- # unlet d.somekey
- # assert_equal({key: 'value', '123': 'qwerty'}, d)
- END
- CheckDefAndScriptSuccess(lines)
-
- # TODO: move to above once "unlet d.somekey" in :def is implemented
- lines =<< trim END
- vim9script
- var d: dict<string> = {}
- d['key'] = 'value'
- d.somekey = 'someval'
- assert_equal({key: 'value', somekey: 'someval'}, d)
unlet d.somekey
- assert_equal({key: 'value'}, d)
+ assert_equal({key: 'value', '123': 'qwerty'}, d)
END
- CheckScriptSuccess(lines)
+ CheckDefAndScriptSuccess(lines)
CheckDefFailure(["var d: dict<number> = {a: '', b: true}"], 'E1012: Type mismatch; expected dict<number> but got dict<any>', 1)
CheckDefFailure(["var d: dict<dict<number>> = {x: {a: '', b: true}}"], 'E1012: Type mismatch; expected dict<dict<number>> but got dict<dict<any>>', 1)
enddef
def Test_nested_inline_lambda()
- # TODO: use the "text" argument
var lines =<< trim END
vim9script
def F(text: string): func(string): func(string): string
return (arg: string): func(string): string => ((sep: string): string => {
- return sep .. arg
+ return sep .. arg .. text
})
enddef
- assert_equal('--there', F('unused')('there')('--'))
+ assert_equal('--there++', F('++')('there')('--'))
END
CheckScriptSuccess(lines)
var varlist = [7, 8]
const constlist = [1, varlist, 3]
varlist[0] = 77
- # TODO: does not work yet
- # constlist[1][1] = 88
+ constlist[1][1] = 88
var cl = constlist[1]
cl[1] = 88
constlist->assert_equal([1, [77, 88], 3])
var vardict = {five: 5, six: 6}
const constdict = {one: 1, two: vardict, three: 3}
vardict['five'] = 55
- # TODO: does not work yet
- # constdict['two']['six'] = 66
+ constdict['two']['six'] = 66
var cd = constdict['two']
cd['six'] = 66
constdict->assert_equal({one: 1, two: {five: 55, six: 66}, three: 3})
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 3281,
/**/
3280,
/**/