1" Tests for the :source command. 2 3func Test_source_autocmd() 4 call writefile([ 5 \ 'let did_source = 1', 6 \ ], 'Xsourced') 7 au SourcePre *source* let did_source_pre = 1 8 au SourcePost *source* let did_source_post = 1 9 10 source Xsourced 11 12 call assert_equal(g:did_source, 1) 13 call assert_equal(g:did_source_pre, 1) 14 call assert_equal(g:did_source_post, 1) 15 16 call delete('Xsourced') 17 au! SourcePre 18 au! SourcePost 19 unlet g:did_source 20 unlet g:did_source_pre 21 unlet g:did_source_post 22endfunc 23 24func Test_source_cmd() 25 au SourceCmd *source* let did_source = expand('<afile>') 26 au SourcePre *source* let did_source_pre = 2 27 au SourcePost *source* let did_source_post = 2 28 29 source Xsourced 30 31 call assert_equal(g:did_source, 'Xsourced') 32 call assert_false(exists('g:did_source_pre')) 33 call assert_equal(g:did_source_post, 2) 34 35 au! SourceCmd 36 au! SourcePre 37 au! SourcePost 38endfunc 39