mirror of
https://github.com/dense-analysis/ale.git
synced 2025-12-06 12:44:23 +08:00
Add a function for computing the number of arguments for a function
This commit is contained in:
41
test/test_function_arg_count.vader
Normal file
41
test/test_function_arg_count.vader
Normal file
@@ -0,0 +1,41 @@
|
||||
Before:
|
||||
function! Func0()
|
||||
endfunction
|
||||
function! Func1(x)
|
||||
endfunction
|
||||
function! Func2(x,y)
|
||||
endfunction
|
||||
function! Func3(x,y,z)
|
||||
endfunction
|
||||
function! Func3a(x,y,z,...)
|
||||
endfunction
|
||||
|
||||
After:
|
||||
delfunction Func0
|
||||
delfunction Func1
|
||||
delfunction Func2
|
||||
delfunction Func3
|
||||
delfunction Func3a
|
||||
|
||||
Execute(We should be able to compute the argument count for function names):
|
||||
AssertEqual 0, ale#util#FunctionArgCount('Func0')
|
||||
AssertEqual 1, ale#util#FunctionArgCount('Func1')
|
||||
AssertEqual 2, ale#util#FunctionArgCount('Func2')
|
||||
AssertEqual 3, ale#util#FunctionArgCount('Func3')
|
||||
AssertEqual 3, ale#util#FunctionArgCount('Func3a')
|
||||
|
||||
Execute(We should be able to compute the argument count for Funcrefs):
|
||||
AssertEqual 0, ale#util#FunctionArgCount(function('Func0'))
|
||||
AssertEqual 1, ale#util#FunctionArgCount(function('Func1'))
|
||||
AssertEqual 2, ale#util#FunctionArgCount(function('Func2'))
|
||||
AssertEqual 3, ale#util#FunctionArgCount(function('Func3'))
|
||||
AssertEqual 3, ale#util#FunctionArgCount(function('Func3a'))
|
||||
|
||||
Execute(We should be able to compute the argument count for lambdas):
|
||||
if has('lambda')
|
||||
AssertEqual 0, ale#util#FunctionArgCount({->1})
|
||||
AssertEqual 1, ale#util#FunctionArgCount({x->1})
|
||||
AssertEqual 2, ale#util#FunctionArgCount({x,y->1})
|
||||
AssertEqual 3, ale#util#FunctionArgCount({x,y,z->1})
|
||||
AssertEqual 3, ale#util#FunctionArgCount({x,y,z,...->1})
|
||||
endif
|
||||
Reference in New Issue
Block a user