blob: cc5c10e9858a6deb9264bb7e1f16636bb1621ac9 [file] [log] [blame]
Bram Moolenaarb31cf2b2017-09-02 19:45:19 +02001" Tests for setbufline() and getbufline()
2
Bram Moolenaar660b85e2017-09-30 14:26:58 +02003source shared.vim
Bram Moolenaar11aa62f2017-09-04 22:56:01 +02004
Bram Moolenaarb31cf2b2017-09-02 19:45:19 +02005func Test_setbufline_getbufline()
6 new
7 let b = bufnr('%')
8 hide
9 call assert_equal(0, setbufline(b, 1, ['foo', 'bar']))
10 call assert_equal(['foo'], getbufline(b, 1))
11 call assert_equal(['bar'], getbufline(b, 2))
12 call assert_equal(['foo', 'bar'], getbufline(b, 1, 2))
13 exe "bd!" b
14 call assert_equal([], getbufline(b, 1, 2))
15
16 split Xtest
17 call setline(1, ['a', 'b', 'c'])
18 let b = bufnr('%')
19 wincmd w
20 call assert_equal(1, setbufline(b, 5, ['x']))
21 call assert_equal(1, setbufline(1234, 1, ['x']))
22 call assert_equal(0, setbufline(b, 4, ['d', 'e']))
23 call assert_equal(['c'], getbufline(b, 3))
24 call assert_equal(['d'], getbufline(b, 4))
25 call assert_equal(['e'], getbufline(b, 5))
26 call assert_equal([], getbufline(b, 6))
27 exe "bwipe! " . b
28endfunc
Bram Moolenaar9d954202017-09-04 20:34:19 +020029
30func Test_setline_startup()
31 let cmd = GetVimCommand('Xscript')
32 if cmd == ''
33 return
34 endif
Bram Moolenaar11aa62f2017-09-04 22:56:01 +020035 call writefile(['call setline(1, "Hello")', 'silent w Xtest', 'q!'], 'Xscript')
Bram Moolenaar9d954202017-09-04 20:34:19 +020036 call system(cmd)
37 call assert_equal(['Hello'], readfile('Xtest'))
38
39 call delete('Xscript')
40 call delete('Xtest')
41endfunc