diff options
Diffstat (limited to 'test/functional/legacy/nested_function_spec.lua')
-rw-r--r-- | test/functional/legacy/nested_function_spec.lua | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/test/functional/legacy/nested_function_spec.lua b/test/functional/legacy/nested_function_spec.lua new file mode 100644 index 0000000000..87371c8294 --- /dev/null +++ b/test/functional/legacy/nested_function_spec.lua @@ -0,0 +1,50 @@ +-- Tests for nested function. + +local helpers = require('test.functional.helpers') +local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert +local execute, expect, source = helpers.execute, helpers.expect, helpers.source + +describe('test_nested_function', function() + setup(clear) + + it('is working', function() + insert([[ + result:]]) + + source([[ + :fu! NestedFunc() + : fu! Func1() + : $put ='Func1' + : endfunction + : call Func1() + : fu! s:func2() + : $put ='s:func2' + : endfunction + : call s:func2() + : fu! s:_func3() + : $put ='s:_func3' + : endfunction + : call s:_func3() + : let fn = 'Func4' + : fu! {fn}() + : $put ='Func4' + : endfunction + : call {fn}() + : let fn = 'func5' + : fu! s:{fn}() + : $put ='s:func5' + : endfunction + : call s:{fn}() + :endfunction]]) + execute('call NestedFunc()') + + -- Assert buffer contents. + expect([[ + result: + Func1 + s:func2 + s:_func3 + Func4 + s:func5]]) + end) +end) |