mirror of https://github.com/vim/vim.git
patch 8.2.0480: Vim9: some code is not tested
Problem: Vim9: some code is not tested. Solution: Add more tests.
This commit is contained in:
parent
2027973b5b
commit
0b37a2f379
|
@ -706,9 +706,12 @@ def Test_expr7_list()
|
||||||
assert_equal(g:list_empty, [])
|
assert_equal(g:list_empty, [])
|
||||||
assert_equal(g:list_empty, [ ])
|
assert_equal(g:list_empty, [ ])
|
||||||
assert_equal(g:list_mixed, [1, 'b', false])
|
assert_equal(g:list_mixed, [1, 'b', false])
|
||||||
|
assert_equal('b', g:list_mixed[1])
|
||||||
|
|
||||||
call CheckDefExecFailure("let x = g:anint[3]", 'E714:')
|
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 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:')
|
call CheckDefExecFailure("let x = g:list_empty[3]", 'E684:')
|
||||||
enddef
|
enddef
|
||||||
|
|
||||||
|
@ -739,6 +742,12 @@ def Test_expr7_dict()
|
||||||
call CheckDefExecFailure("let x = g:dict_empty.member", 'E716:')
|
call CheckDefExecFailure("let x = g:dict_empty.member", 'E716:')
|
||||||
enddef
|
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()
|
def Test_expr7_option()
|
||||||
" option
|
" option
|
||||||
set ts=11
|
set ts=11
|
||||||
|
@ -778,6 +787,30 @@ def Test_expr7_parens()
|
||||||
assert_equal(-6, ---6)
|
assert_equal(-6, ---6)
|
||||||
enddef
|
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()
|
def Test_expr7_not()
|
||||||
assert_equal(true, !'')
|
assert_equal(true, !'')
|
||||||
assert_equal(true, ![])
|
assert_equal(true, ![])
|
||||||
|
|
|
@ -738,6 +738,8 @@ static char *(features[]) =
|
||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
480,
|
||||||
/**/
|
/**/
|
||||||
479,
|
479,
|
||||||
/**/
|
/**/
|
||||||
|
|
|
@ -2622,11 +2622,14 @@ compile_subscript(
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// method call: list->method()
|
// method call: list->method()
|
||||||
for (p = *arg; eval_isnamec1(*p); ++p)
|
p = *arg;
|
||||||
|
if (ASCII_ISALPHA(*p) && p[1] == ':')
|
||||||
|
p += 2;
|
||||||
|
for ( ; eval_isnamec1(*p); ++p)
|
||||||
;
|
;
|
||||||
if (*p != '(')
|
if (*p != '(')
|
||||||
{
|
{
|
||||||
semsg(_(e_missing_paren), arg);
|
semsg(_(e_missing_paren), *arg);
|
||||||
return FAIL;
|
return FAIL;
|
||||||
}
|
}
|
||||||
// TODO: base value may not be the first argument
|
// TODO: base value may not be the first argument
|
||||||
|
|
Loading…
Reference in New Issue