Mercurial > vim
annotate src/testdir/test_bufline.vim @ 17518:bfc5a2962f38 v8.1.1757
patch 8.1.1757: text added with appendbufline() isn't displayed
commit https://github.com/vim/vim/commit/298466629119eda501cfdf7824797f05045e67ca
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Jul 27 17:39:15 2019 +0200
patch 8.1.1757: text added with appendbufline() isn't displayed
Problem: Text added with appendbufline() to another buffer isn't displayed.
Solution: Update topline. (partly by Christian Brabandt, closes https://github.com/vim/vim/issues/4718)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 27 Jul 2019 17:45:08 +0200 |
parents | 9c90cf08cfa8 |
children | 0da9bc55c31a |
rev | line source |
---|---|
14043
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
1 " Tests for setbufline(), getbufline(), appendbufline(), deletebufline() |
12319
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
2 |
12568
440d934bd616
patch 8.0.1162: shared script for tests cannot be included twice
Christian Brabandt <cb@256bit.org>
parents:
12351
diff
changeset
|
3 source shared.vim |
17518
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
4 source screendump.vim |
12351
4e61b77cd96f
patch 8.0.1055: bufline test hangs on MS-Windows
Christian Brabandt <cb@256bit.org>
parents:
12347
diff
changeset
|
5 |
12319
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
6 func Test_setbufline_getbufline() |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
7 new |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
8 let b = bufnr('%') |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
9 hide |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
10 call assert_equal(0, setbufline(b, 1, ['foo', 'bar'])) |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
11 call assert_equal(['foo'], getbufline(b, 1)) |
16668
81be817c9d9a
patch 8.1.1336: some eval functionality is not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
16368
diff
changeset
|
12 call assert_equal(['bar'], getbufline(b, '$')) |
12319
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
13 call assert_equal(['foo', 'bar'], getbufline(b, 1, 2)) |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
14 exe "bd!" b |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
15 call assert_equal([], getbufline(b, 1, 2)) |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
16 |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
17 split Xtest |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
18 call setline(1, ['a', 'b', 'c']) |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
19 let b = bufnr('%') |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
20 wincmd w |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
21 call assert_equal(1, setbufline(b, 5, ['x'])) |
16368
a3b5cbd2effe
patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents:
14826
diff
changeset
|
22 call assert_equal(1, setbufline(bufnr('$') + 1, 1, ['x'])) |
12319
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
23 call assert_equal(0, setbufline(b, 4, ['d', 'e'])) |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
24 call assert_equal(['c'], getbufline(b, 3)) |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
25 call assert_equal(['d'], getbufline(b, 4)) |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
26 call assert_equal(['e'], getbufline(b, 5)) |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
27 call assert_equal([], getbufline(b, 6)) |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
28 exe "bwipe! " . b |
c7e95667d14b
patch 8.0.1039: cannot change a line in not current buffer
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
29 endfunc |
12347
61a9642297cc
patch 8.0.1053: setline() does not work on startup
Christian Brabandt <cb@256bit.org>
parents:
12319
diff
changeset
|
30 |
12794
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
31 func Test_setbufline_getbufline_fold() |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
32 split Xtest |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
33 setlocal foldmethod=expr foldexpr=0 |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
34 let b = bufnr('%') |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
35 new |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
36 call assert_equal(0, setbufline(b, 1, ['foo', 'bar'])) |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
37 call assert_equal(['foo'], getbufline(b, 1)) |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
38 call assert_equal(['bar'], getbufline(b, 2)) |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
39 call assert_equal(['foo', 'bar'], getbufline(b, 1, 2)) |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
40 exe "bwipe!" b |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
41 bwipe! |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
42 endfunc |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
43 |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
44 func Test_setbufline_getbufline_fold_tab() |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
45 split Xtest |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
46 setlocal foldmethod=expr foldexpr=0 |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
47 let b = bufnr('%') |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
48 tab new |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
49 call assert_equal(0, setbufline(b, 1, ['foo', 'bar'])) |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
50 call assert_equal(['foo'], getbufline(b, 1)) |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
51 call assert_equal(['bar'], getbufline(b, 2)) |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
52 call assert_equal(['foo', 'bar'], getbufline(b, 1, 2)) |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
53 exe "bwipe!" b |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
54 bwipe! |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
55 endfunc |
d4fc8a7dc7d9
patch 8.0.1274: setbufline() fails when using folding
Christian Brabandt <cb@256bit.org>
parents:
12568
diff
changeset
|
56 |
12347
61a9642297cc
patch 8.0.1053: setline() does not work on startup
Christian Brabandt <cb@256bit.org>
parents:
12319
diff
changeset
|
57 func Test_setline_startup() |
61a9642297cc
patch 8.0.1053: setline() does not work on startup
Christian Brabandt <cb@256bit.org>
parents:
12319
diff
changeset
|
58 let cmd = GetVimCommand('Xscript') |
61a9642297cc
patch 8.0.1053: setline() does not work on startup
Christian Brabandt <cb@256bit.org>
parents:
12319
diff
changeset
|
59 if cmd == '' |
61a9642297cc
patch 8.0.1053: setline() does not work on startup
Christian Brabandt <cb@256bit.org>
parents:
12319
diff
changeset
|
60 return |
61a9642297cc
patch 8.0.1053: setline() does not work on startup
Christian Brabandt <cb@256bit.org>
parents:
12319
diff
changeset
|
61 endif |
12351
4e61b77cd96f
patch 8.0.1055: bufline test hangs on MS-Windows
Christian Brabandt <cb@256bit.org>
parents:
12347
diff
changeset
|
62 call writefile(['call setline(1, "Hello")', 'silent w Xtest', 'q!'], 'Xscript') |
12347
61a9642297cc
patch 8.0.1053: setline() does not work on startup
Christian Brabandt <cb@256bit.org>
parents:
12319
diff
changeset
|
63 call system(cmd) |
61a9642297cc
patch 8.0.1053: setline() does not work on startup
Christian Brabandt <cb@256bit.org>
parents:
12319
diff
changeset
|
64 call assert_equal(['Hello'], readfile('Xtest')) |
61a9642297cc
patch 8.0.1053: setline() does not work on startup
Christian Brabandt <cb@256bit.org>
parents:
12319
diff
changeset
|
65 |
61a9642297cc
patch 8.0.1053: setline() does not work on startup
Christian Brabandt <cb@256bit.org>
parents:
12319
diff
changeset
|
66 call delete('Xscript') |
61a9642297cc
patch 8.0.1053: setline() does not work on startup
Christian Brabandt <cb@256bit.org>
parents:
12319
diff
changeset
|
67 call delete('Xtest') |
61a9642297cc
patch 8.0.1053: setline() does not work on startup
Christian Brabandt <cb@256bit.org>
parents:
12319
diff
changeset
|
68 endfunc |
14039
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
69 |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
70 func Test_appendbufline() |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
71 new |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
72 let b = bufnr('%') |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
73 hide |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
74 call assert_equal(0, appendbufline(b, 0, ['foo', 'bar'])) |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
75 call assert_equal(['foo'], getbufline(b, 1)) |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
76 call assert_equal(['bar'], getbufline(b, 2)) |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
77 call assert_equal(['foo', 'bar'], getbufline(b, 1, 2)) |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
78 exe "bd!" b |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
79 call assert_equal([], getbufline(b, 1, 2)) |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
80 |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
81 split Xtest |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
82 call setline(1, ['a', 'b', 'c']) |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
83 let b = bufnr('%') |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
84 wincmd w |
16668
81be817c9d9a
patch 8.1.1336: some eval functionality is not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
16368
diff
changeset
|
85 call assert_equal(1, appendbufline(b, -1, ['x'])) |
14039
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
86 call assert_equal(1, appendbufline(b, 4, ['x'])) |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
87 call assert_equal(1, appendbufline(1234, 1, ['x'])) |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
88 call assert_equal(0, appendbufline(b, 3, ['d', 'e'])) |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
89 call assert_equal(['c'], getbufline(b, 3)) |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
90 call assert_equal(['d'], getbufline(b, 4)) |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
91 call assert_equal(['e'], getbufline(b, 5)) |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
92 call assert_equal([], getbufline(b, 6)) |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
93 exe "bwipe! " . b |
acb2dc112b06
patch 8.1.0037: cannot easily append lines to another buffer
Christian Brabandt <cb@256bit.org>
parents:
12794
diff
changeset
|
94 endfunc |
14043
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
95 |
14826
75d474a8868a
patch 8.1.0425: ml_get error and crash with appendbufline()
Christian Brabandt <cb@256bit.org>
parents:
14043
diff
changeset
|
96 func Test_appendbufline_no_E315() |
16720
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
97 let after =<< trim [CODE] |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
98 set stl=%f ls=2 |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
99 new |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
100 let buf = bufnr("%") |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
101 quit |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
102 vsp |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
103 exec "buffer" buf |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
104 wincmd w |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
105 call appendbufline(buf, 0, "abc") |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
106 redraw |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
107 while getbufline(buf, 1)[0] =~ "^\\s*$" |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
108 sleep 10m |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
109 endwhile |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
110 au VimLeavePre * call writefile([v:errmsg], "Xerror") |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
111 au VimLeavePre * call writefile(["done"], "Xdone") |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
112 qall! |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
113 [CODE] |
9c90cf08cfa8
patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents:
16668
diff
changeset
|
114 |
14826
75d474a8868a
patch 8.1.0425: ml_get error and crash with appendbufline()
Christian Brabandt <cb@256bit.org>
parents:
14043
diff
changeset
|
115 if !RunVim([], after, '--clean') |
75d474a8868a
patch 8.1.0425: ml_get error and crash with appendbufline()
Christian Brabandt <cb@256bit.org>
parents:
14043
diff
changeset
|
116 return |
75d474a8868a
patch 8.1.0425: ml_get error and crash with appendbufline()
Christian Brabandt <cb@256bit.org>
parents:
14043
diff
changeset
|
117 endif |
75d474a8868a
patch 8.1.0425: ml_get error and crash with appendbufline()
Christian Brabandt <cb@256bit.org>
parents:
14043
diff
changeset
|
118 call assert_notmatch("^E315:", readfile("Xerror")[0]) |
75d474a8868a
patch 8.1.0425: ml_get error and crash with appendbufline()
Christian Brabandt <cb@256bit.org>
parents:
14043
diff
changeset
|
119 call assert_equal("done", readfile("Xdone")[0]) |
75d474a8868a
patch 8.1.0425: ml_get error and crash with appendbufline()
Christian Brabandt <cb@256bit.org>
parents:
14043
diff
changeset
|
120 call delete("Xerror") |
75d474a8868a
patch 8.1.0425: ml_get error and crash with appendbufline()
Christian Brabandt <cb@256bit.org>
parents:
14043
diff
changeset
|
121 call delete("Xdone") |
75d474a8868a
patch 8.1.0425: ml_get error and crash with appendbufline()
Christian Brabandt <cb@256bit.org>
parents:
14043
diff
changeset
|
122 endfunc |
75d474a8868a
patch 8.1.0425: ml_get error and crash with appendbufline()
Christian Brabandt <cb@256bit.org>
parents:
14043
diff
changeset
|
123 |
14043
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
124 func Test_deletebufline() |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
125 new |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
126 let b = bufnr('%') |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
127 call setline(1, ['aaa', 'bbb', 'ccc']) |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
128 hide |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
129 call assert_equal(0, deletebufline(b, 2)) |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
130 call assert_equal(['aaa', 'ccc'], getbufline(b, 1, 2)) |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
131 call assert_equal(0, deletebufline(b, 2, 8)) |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
132 call assert_equal(['aaa'], getbufline(b, 1, 2)) |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
133 exe "bd!" b |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
134 call assert_equal(1, deletebufline(b, 1)) |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
135 |
16668
81be817c9d9a
patch 8.1.1336: some eval functionality is not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
16368
diff
changeset
|
136 call assert_equal(1, deletebufline(-1, 1)) |
81be817c9d9a
patch 8.1.1336: some eval functionality is not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
16368
diff
changeset
|
137 |
14043
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
138 split Xtest |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
139 call setline(1, ['a', 'b', 'c']) |
16668
81be817c9d9a
patch 8.1.1336: some eval functionality is not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
16368
diff
changeset
|
140 call cursor(line('$'), 1) |
14043
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
141 let b = bufnr('%') |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
142 wincmd w |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
143 call assert_equal(1, deletebufline(b, 4)) |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
144 call assert_equal(0, deletebufline(b, 1)) |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
145 call assert_equal(['b', 'c'], getbufline(b, 1, 2)) |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
146 exe "bwipe! " . b |
cbad3b3f46b2
patch 8.1.0039: cannot easily delete lines in another buffer
Christian Brabandt <cb@256bit.org>
parents:
14039
diff
changeset
|
147 endfunc |
17518
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
148 |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
149 func Test_appendbufline_redraw() |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
150 if !CanRunVimInTerminal() |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
151 throw 'Skipped: cannot make screendumps' |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
152 endif |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
153 let lines =<< trim END |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
154 new foo |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
155 let winnr=bufwinnr('foo') |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
156 let buf=bufnr('foo') |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
157 wincmd p |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
158 call appendbufline(buf, '$', range(1,200)) |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
159 exe winnr. 'wincmd w' |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
160 norm! G |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
161 wincmd p |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
162 call deletebufline(buf, 1, '$') |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
163 call appendbufline(buf, '$', 'Hello Vim world...') |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
164 END |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
165 call writefile(lines, 'XscriptMatchCommon') |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
166 let buf = RunVimInTerminal('-S XscriptMatchCommon', #{rows: 10}) |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
167 call term_wait(buf) |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
168 call VerifyScreenDump(buf, 'Test_appendbufline_1', {}) |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
169 |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
170 call StopVimInTerminal(buf) |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
171 call delete('XscriptMatchCommon') |
bfc5a2962f38
patch 8.1.1757: text added with appendbufline() isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
16720
diff
changeset
|
172 endfunc |