| "Tests for nested functions |
| " |
| function! NestedFunc() |
| fu! Func1() |
| let g:text .= 'Func1 ' |
| endfunction |
| call Func1() |
| fu! s:func2() |
| let g:text .= 's:func2 ' |
| endfunction |
| call s:func2() |
| fu! s:_func3() |
| let g:text .= 's:_func3 ' |
| endfunction |
| call s:_func3() |
| let fn = 'Func4' |
| fu! {fn}() |
| let g:text .= 'Func4 ' |
| endfunction |
| call {fn}() |
| let fn = 'func5' |
| fu! s:{fn}() |
| let g:text .= 's:func5' |
| endfunction |
| call s:{fn}() |
| endfunction |
| |
| function! Test_nested_functions() |
| let g:text = '' |
| call NestedFunc() |
| call assert_equal('Func1 s:func2 s:_func3 Func4 s:func5', g:text) |
| endfunction |