" Tests for expand() let s:sfile = expand('') let s:slnum = str2nr(expand('')) let s:sflnum = str2nr(expand('')) func s:expand_sfile() return expand('') endfunc func s:expand_slnum() return str2nr(expand('')) endfunc func s:expand_sflnum() return str2nr(expand('')) endfunc func Test_expand_sfile() call assert_match('test_expand_func\.vim$', s:sfile) call assert_match('^function .*\.\.Test_expand_sfile$', expand('')) " Call in script-local function call assert_match('^function .*\.\.Test_expand_sfile\[5\]\.\.\d\+_expand_sfile$', s:expand_sfile()) " Call in command command Sfile echo expand('') call assert_match('^function .*\.\.Test_expand_sfile$', trim(execute('Sfile'))) delcommand Sfile endfunc func Test_expand_slnum() call assert_equal(4, s:slnum) call assert_equal(2, str2nr(expand(''))) " Line-continuation call assert_equal( \ 5, \ str2nr(expand(''))) " Call in script-local function call assert_equal(1, s:expand_slnum()) " Call in command command Slnum echo expand('') call assert_equal(14, str2nr(trim(execute('Slnum')))) delcommand Slnum endfunc func Test_expand_sflnum() call assert_equal(5, s:sflnum) call assert_equal(52, str2nr(expand(''))) " Line-continuation call assert_equal( \ 55, \ str2nr(expand(''))) " Call in script-local function call assert_equal(16, s:expand_sflnum()) " Call in command command Flnum echo expand('') call assert_equal(64, str2nr(trim(execute('Flnum')))) delcommand Flnum endfunc func Test_expand() new call assert_equal("", expand('%:S')) call assert_equal('3', ''->expand()) call assert_equal(['4'], expand('', v:false, v:true)) " Don't add any line above this, otherwise will change. quit endfunc " Test for 'wildignore' with expand() func Test_expand_wildignore() set wildignore=*.vim call assert_equal('', expand('test_expand_func.vim')) call assert_equal('', expand('test_expand_func.vim', 0)) call assert_equal([], expand('test_expand_func.vim', 0, 1)) call assert_equal('test_expand_func.vim', expand('test_expand_func.vim', 1)) call assert_equal(['test_expand_func.vim'], \ expand('test_expand_func.vim', 1, 1)) call assert_fails("call expand('*', [])", 'E745:') set wildignore& endfunc " vim: shiftwidth=2 sts=2 expandtab