1" Test for :scriptnames
2
3func Test_scriptnames()
4  call writefile(['let did_load_script = 123'], 'Xscripting')
5  source Xscripting
6  call assert_equal(123, g:did_load_script)
7
8  let scripts = split(execute('scriptnames'), "\n")
9  let last = scripts[-1]
10  call assert_match('\<Xscripting\>', last)
11  let lastnr = substitute(last, '\D*\(\d\+\):.*', '\1', '')
12  exe 'script ' . lastnr
13  call assert_equal('Xscripting', expand('%:t'))
14
15  call assert_fails('script ' . (lastnr + 1), 'E474:')
16  call assert_fails('script 0', 'E939:')
17
18  new
19  call setline(1, 'nothing')
20  call assert_fails('script ' . lastnr, 'E37:')
21  exe 'script! ' . lastnr
22  call assert_equal('Xscripting', expand('%:t'))
23
24  bwipe
25  call delete('Xscripting')
26endfunc
27
28" vim: shiftwidth=2 sts=2 expandtab
29