Mercurial > vim
annotate src/testdir/test_mksession.vim @ 18808:7982f65d8f54 v8.1.2392
patch 8.1.2392: using old C style comments
Commit: https://github.com/vim/vim/commit/6e0ce171e19d0118ecd7c2b16e2a1bd50aa76013
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Dec 5 20:12:41 2019 +0100
patch 8.1.2392: using old C style comments
Problem: Using old C style comments.
Solution: Use // comments where appropriate.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 05 Dec 2019 20:15:04 +0100 |
parents | 068337e86133 |
children | 08940efa6b4e |
rev | line source |
---|---|
10436
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
1 " Test for :mksession, :mkview and :loadview in latin1 encoding |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
2 |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
3 set encoding=latin1 |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
4 scriptencoding latin1 |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
5 |
17089
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
17049
diff
changeset
|
6 source check.vim |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
17049
diff
changeset
|
7 CheckFeature mksession |
10436
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
8 |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
9 source shared.vim |
17164
7927cf327396
patch 8.1.1581: shared functions for testing are disorganised
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
10 source term_util.vim |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
11 |
18562
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
12 " Test for storing global and local argument list in a session file |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
13 " This one must be done first. |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
14 func Test__mksession_arglocal() |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
15 enew | only |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
16 n a b c |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
17 new |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
18 arglocal |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
19 mksession! Xtest_mks.out |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
20 |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
21 %bwipe! |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
22 %argdelete |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
23 argglobal |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
24 source Xtest_mks.out |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
25 call assert_equal(2, winnr('$')) |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
26 call assert_equal(2, arglistid(1)) |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
27 call assert_equal(0, arglistid(2)) |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
28 |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
29 %bwipe! |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
30 %argdelete |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
31 argglobal |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
32 call delete('Xtest_mks.out') |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
33 endfunc |
ecbe15ce5918
patch 8.1.2275: using "seesion" looks like a mistake
Bram Moolenaar <Bram@vim.org>
parents:
18211
diff
changeset
|
34 |
10436
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
35 func Test_mksession() |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
36 tabnew |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
37 let wrap_save = &wrap |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
38 set sessionoptions=buffers splitbelow fileencoding=latin1 |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
39 call setline(1, [ |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
40 \ 'start:', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
41 \ 'no multibyte chAracter', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
42 \ ' one leaDing tab', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
43 \ ' four leadinG spaces', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
44 \ 'two consecutive tabs', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
45 \ 'two tabs in one line', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
46 \ 'one ä multibyteCharacter', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
47 \ 'aä Ä two multiByte characters', |
14640
22248c686b32
patch 8.1.0333: :mkview does not restore cursor properly after "$"
Christian Brabandt <cb@256bit.org>
parents:
14635
diff
changeset
|
48 \ 'Aäöü three mulTibyte characters', |
22248c686b32
patch 8.1.0333: :mkview does not restore cursor properly after "$"
Christian Brabandt <cb@256bit.org>
parents:
14635
diff
changeset
|
49 \ 'short line', |
10436
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
50 \ ]) |
10737
52c96cc9a794
patch 8.0.0258: mksession test leaves file behind
Christian Brabandt <cb@256bit.org>
parents:
10726
diff
changeset
|
51 let tmpfile = 'Xtemp' |
10436
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
52 exec 'w! ' . tmpfile |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
53 /^start: |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
54 set wrap |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
55 vsplit |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
56 norm! j16| |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
57 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
58 norm! j16| |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
59 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
60 norm! j16| |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
61 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
62 norm! j8| |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
63 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
64 norm! j8| |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
65 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
66 norm! j16| |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
67 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
68 norm! j16| |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
69 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
70 norm! j16| |
14640
22248c686b32
patch 8.1.0333: :mkview does not restore cursor properly after "$"
Christian Brabandt <cb@256bit.org>
parents:
14635
diff
changeset
|
71 split |
22248c686b32
patch 8.1.0333: :mkview does not restore cursor properly after "$"
Christian Brabandt <cb@256bit.org>
parents:
14635
diff
changeset
|
72 norm! j$ |
10436
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
73 wincmd l |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
74 |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
75 set nowrap |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
76 /^start: |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
77 norm! j16|3zl |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
78 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
79 norm! j016|3zl |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
80 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
81 norm! j016|3zl |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
82 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
83 norm! j08|3zl |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
84 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
85 norm! j08|3zl |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
86 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
87 norm! j016|3zl |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
88 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
89 norm! j016|3zl |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
90 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
91 norm! j016|3zl |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
92 split |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
93 call wincol() |
10737
52c96cc9a794
patch 8.0.0258: mksession test leaves file behind
Christian Brabandt <cb@256bit.org>
parents:
10726
diff
changeset
|
94 mksession! Xtest_mks.out |
14640
22248c686b32
patch 8.1.0333: :mkview does not restore cursor properly after "$"
Christian Brabandt <cb@256bit.org>
parents:
14635
diff
changeset
|
95 let li = filter(readfile('Xtest_mks.out'), 'v:val =~# "\\(^ *normal! [0$]\\|^ *exe ''normal!\\)"') |
10436
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
96 let expected = [ |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
97 \ 'normal! 016|', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
98 \ 'normal! 016|', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
99 \ 'normal! 016|', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
100 \ 'normal! 08|', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
101 \ 'normal! 08|', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
102 \ 'normal! 016|', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
103 \ 'normal! 016|', |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
104 \ 'normal! 016|', |
14640
22248c686b32
patch 8.1.0333: :mkview does not restore cursor properly after "$"
Christian Brabandt <cb@256bit.org>
parents:
14635
diff
changeset
|
105 \ 'normal! $', |
10436
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
106 \ " exe 'normal! ' . s:c . '|zs' . 16 . '|'", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
107 \ " normal! 016|", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
108 \ " exe 'normal! ' . s:c . '|zs' . 16 . '|'", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
109 \ " normal! 016|", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
110 \ " exe 'normal! ' . s:c . '|zs' . 16 . '|'", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
111 \ " normal! 016|", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
112 \ " exe 'normal! ' . s:c . '|zs' . 8 . '|'", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
113 \ " normal! 08|", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
114 \ " exe 'normal! ' . s:c . '|zs' . 8 . '|'", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
115 \ " normal! 08|", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
116 \ " exe 'normal! ' . s:c . '|zs' . 16 . '|'", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
117 \ " normal! 016|", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
118 \ " exe 'normal! ' . s:c . '|zs' . 16 . '|'", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
119 \ " normal! 016|", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
120 \ " exe 'normal! ' . s:c . '|zs' . 16 . '|'", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
121 \ " normal! 016|", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
122 \ " exe 'normal! ' . s:c . '|zs' . 16 . '|'", |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
123 \ " normal! 016|" |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
124 \ ] |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
125 call assert_equal(expected, li) |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
126 tabclose! |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
127 |
10737
52c96cc9a794
patch 8.0.0258: mksession test leaves file behind
Christian Brabandt <cb@256bit.org>
parents:
10726
diff
changeset
|
128 call delete('Xtest_mks.out') |
10436
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
129 call delete(tmpfile) |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
130 let &wrap = wrap_save |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
131 set sessionoptions& |
10436
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
132 endfunc |
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
133 |
10726
78927b31c73a
patch 8.0.0253: error when loading session if winminheight is 2
Christian Brabandt <cb@256bit.org>
parents:
10436
diff
changeset
|
134 func Test_mksession_winheight() |
78927b31c73a
patch 8.0.0253: error when loading session if winminheight is 2
Christian Brabandt <cb@256bit.org>
parents:
10436
diff
changeset
|
135 new |
14057
be8fb2fd51fc
patch 8.1.0046: loading a session file fails if 'winheight' is big
Christian Brabandt <cb@256bit.org>
parents:
13435
diff
changeset
|
136 set winheight=10 |
be8fb2fd51fc
patch 8.1.0046: loading a session file fails if 'winheight' is big
Christian Brabandt <cb@256bit.org>
parents:
13435
diff
changeset
|
137 set winminheight=2 |
10737
52c96cc9a794
patch 8.0.0258: mksession test leaves file behind
Christian Brabandt <cb@256bit.org>
parents:
10726
diff
changeset
|
138 mksession! Xtest_mks.out |
52c96cc9a794
patch 8.0.0258: mksession test leaves file behind
Christian Brabandt <cb@256bit.org>
parents:
10726
diff
changeset
|
139 source Xtest_mks.out |
10726
78927b31c73a
patch 8.0.0253: error when loading session if winminheight is 2
Christian Brabandt <cb@256bit.org>
parents:
10436
diff
changeset
|
140 |
10737
52c96cc9a794
patch 8.0.0258: mksession test leaves file behind
Christian Brabandt <cb@256bit.org>
parents:
10726
diff
changeset
|
141 call delete('Xtest_mks.out') |
10726
78927b31c73a
patch 8.0.0253: error when loading session if winminheight is 2
Christian Brabandt <cb@256bit.org>
parents:
10436
diff
changeset
|
142 endfunc |
78927b31c73a
patch 8.0.0253: error when loading session if winminheight is 2
Christian Brabandt <cb@256bit.org>
parents:
10436
diff
changeset
|
143 |
14057
be8fb2fd51fc
patch 8.1.0046: loading a session file fails if 'winheight' is big
Christian Brabandt <cb@256bit.org>
parents:
13435
diff
changeset
|
144 func Test_mksession_large_winheight() |
be8fb2fd51fc
patch 8.1.0046: loading a session file fails if 'winheight' is big
Christian Brabandt <cb@256bit.org>
parents:
13435
diff
changeset
|
145 set winheight=999 |
be8fb2fd51fc
patch 8.1.0046: loading a session file fails if 'winheight' is big
Christian Brabandt <cb@256bit.org>
parents:
13435
diff
changeset
|
146 mksession! Xtest_mks_winheight.out |
be8fb2fd51fc
patch 8.1.0046: loading a session file fails if 'winheight' is big
Christian Brabandt <cb@256bit.org>
parents:
13435
diff
changeset
|
147 set winheight& |
be8fb2fd51fc
patch 8.1.0046: loading a session file fails if 'winheight' is big
Christian Brabandt <cb@256bit.org>
parents:
13435
diff
changeset
|
148 source Xtest_mks_winheight.out |
be8fb2fd51fc
patch 8.1.0046: loading a session file fails if 'winheight' is big
Christian Brabandt <cb@256bit.org>
parents:
13435
diff
changeset
|
149 call delete('Xtest_mks_winheight.out') |
be8fb2fd51fc
patch 8.1.0046: loading a session file fails if 'winheight' is big
Christian Brabandt <cb@256bit.org>
parents:
13435
diff
changeset
|
150 endfunc |
be8fb2fd51fc
patch 8.1.0046: loading a session file fails if 'winheight' is big
Christian Brabandt <cb@256bit.org>
parents:
13435
diff
changeset
|
151 |
15613
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
152 func Test_mksession_rtp() |
15617
c91618229f99
patch 8.1.0816: test for 'runtimepath' in session fails on MS-Windows
Bram Moolenaar <Bram@vim.org>
parents:
15613
diff
changeset
|
153 if has('win32') |
c91618229f99
patch 8.1.0816: test for 'runtimepath' in session fails on MS-Windows
Bram Moolenaar <Bram@vim.org>
parents:
15613
diff
changeset
|
154 " TODO: fix problem with backslashes |
c91618229f99
patch 8.1.0816: test for 'runtimepath' in session fails on MS-Windows
Bram Moolenaar <Bram@vim.org>
parents:
15613
diff
changeset
|
155 return |
c91618229f99
patch 8.1.0816: test for 'runtimepath' in session fails on MS-Windows
Bram Moolenaar <Bram@vim.org>
parents:
15613
diff
changeset
|
156 endif |
15613
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
157 new |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
158 let _rtp=&rtp |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
159 " Make a real long (invalid) runtimepath value, |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
160 " that should exceed PATH_MAX (hopefully) |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
161 let newrtp=&rtp.',~'.repeat('/foobar', 1000) |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
162 let newrtp.=",".expand("$HOME")."/.vim" |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
163 let &rtp=newrtp |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
164 |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
165 " determine expected value |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
166 let expected=split(&rtp, ',') |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
167 let expected = map(expected, '"set runtimepath+=".v:val') |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
168 let expected = ['set runtimepath='] + expected |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
169 let expected = map(expected, {v,w -> substitute(w, $HOME, "~", "g")}) |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
170 |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
171 mksession! Xtest_mks.out |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
172 let &rtp=_rtp |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
173 let li = filter(readfile('Xtest_mks.out'), 'v:val =~# "runtimepath"') |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
174 call assert_equal(expected, li) |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
175 |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
176 call delete('Xtest_mks.out') |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
177 endfunc |
90f01701ecad
patch 8.1.0814: :mksession cannot handle a very long 'runtimepath'
Bram Moolenaar <Bram@vim.org>
parents:
15599
diff
changeset
|
178 |
10809
3adae5c1b1cd
patch 8.0.0294: argument list is not stored correctly in a session file
Christian Brabandt <cb@256bit.org>
parents:
10737
diff
changeset
|
179 func Test_mksession_arglist() |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
180 %argdel |
10809
3adae5c1b1cd
patch 8.0.0294: argument list is not stored correctly in a session file
Christian Brabandt <cb@256bit.org>
parents:
10737
diff
changeset
|
181 next file1 file2 file3 file4 |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
182 new |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
183 next | next |
10809
3adae5c1b1cd
patch 8.0.0294: argument list is not stored correctly in a session file
Christian Brabandt <cb@256bit.org>
parents:
10737
diff
changeset
|
184 mksession! Xtest_mks.out |
3adae5c1b1cd
patch 8.0.0294: argument list is not stored correctly in a session file
Christian Brabandt <cb@256bit.org>
parents:
10737
diff
changeset
|
185 source Xtest_mks.out |
3adae5c1b1cd
patch 8.0.0294: argument list is not stored correctly in a session file
Christian Brabandt <cb@256bit.org>
parents:
10737
diff
changeset
|
186 call assert_equal(['file1', 'file2', 'file3', 'file4'], argv()) |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
187 call assert_equal(2, argidx()) |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
188 wincmd w |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
189 call assert_equal(0, argidx()) |
10809
3adae5c1b1cd
patch 8.0.0294: argument list is not stored correctly in a session file
Christian Brabandt <cb@256bit.org>
parents:
10737
diff
changeset
|
190 |
3adae5c1b1cd
patch 8.0.0294: argument list is not stored correctly in a session file
Christian Brabandt <cb@256bit.org>
parents:
10737
diff
changeset
|
191 call delete('Xtest_mks.out') |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
192 enew | only |
10809
3adae5c1b1cd
patch 8.0.0294: argument list is not stored correctly in a session file
Christian Brabandt <cb@256bit.org>
parents:
10737
diff
changeset
|
193 argdel * |
3adae5c1b1cd
patch 8.0.0294: argument list is not stored correctly in a session file
Christian Brabandt <cb@256bit.org>
parents:
10737
diff
changeset
|
194 endfunc |
3adae5c1b1cd
patch 8.0.0294: argument list is not stored correctly in a session file
Christian Brabandt <cb@256bit.org>
parents:
10737
diff
changeset
|
195 |
12289
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
196 func Test_mksession_one_buffer_two_windows() |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
197 edit Xtest1 |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
198 new Xtest2 |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
199 split |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
200 mksession! Xtest_mks.out |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
201 let lines = readfile('Xtest_mks.out') |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
202 let count1 = 0 |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
203 let count2 = 0 |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
204 let count2buf = 0 |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
205 for line in lines |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
206 if line =~ 'edit \f*Xtest1$' |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
207 let count1 += 1 |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
208 endif |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
209 if line =~ 'edit \f\{-}Xtest2' |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
210 let count2 += 1 |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
211 endif |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
212 if line =~ 'buffer \f\{-}Xtest2' |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
213 let count2buf += 1 |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
214 endif |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
215 endfor |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
216 call assert_equal(1, count1, 'Xtest1 count') |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
217 call assert_equal(2, count2, 'Xtest2 count') |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
218 call assert_equal(2, count2buf, 'Xtest2 buffer count') |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
219 |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
220 close |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
221 bwipe! |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
222 call delete('Xtest_mks.out') |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
223 endfunc |
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
224 |
14266
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
225 func Test_mksession_lcd_multiple_tabs() |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
226 tabnew |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
227 tabnew |
14270
5ad78e7f5b01
patch 8.1.0151: mksession test fails on MS-Windows
Christian Brabandt <cb@256bit.org>
parents:
14266
diff
changeset
|
228 lcd . |
14266
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
229 tabfirst |
14270
5ad78e7f5b01
patch 8.1.0151: mksession test fails on MS-Windows
Christian Brabandt <cb@256bit.org>
parents:
14266
diff
changeset
|
230 lcd . |
14266
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
231 mksession! Xtest_mks.out |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
232 tabonly |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
233 source Xtest_mks.out |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
234 call assert_true(haslocaldir(), 'Tab 1 localdir') |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
235 tabnext 2 |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
236 call assert_true(!haslocaldir(), 'Tab 2 localdir') |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
237 tabnext 3 |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
238 call assert_true(haslocaldir(), 'Tab 3 localdir') |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
239 call delete('Xtest_mks.out') |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
240 endfunc |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
241 |
16427
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
242 " Test for tabpage-local directory |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
243 func Test_mksession_tcd_multiple_tabs() |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
244 let save_cwd = getcwd() |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
245 call mkdir('Xtopdir') |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
246 cd Xtopdir |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
247 call mkdir('Xtabdir1') |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
248 call mkdir('Xtabdir2') |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
249 call mkdir('Xtabdir3') |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
250 call mkdir('Xwindir1') |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
251 call mkdir('Xwindir2') |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
252 call mkdir('Xwindir3') |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
253 tcd Xtabdir1 |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
254 botright new |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
255 wincmd t |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
256 lcd ../Xwindir1 |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
257 tabnew |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
258 tcd ../Xtabdir2 |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
259 botright new |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
260 lcd ../Xwindir2 |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
261 tabnew |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
262 tcd ../Xtabdir3 |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
263 botright new |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
264 lcd ../Xwindir3 |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
265 tabfirst |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
266 1wincmd w |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
267 mksession! Xtest_mks.out |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
268 only | tabonly |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
269 source Xtest_mks.out |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
270 call assert_equal('Xtabdir1', fnamemodify(getcwd(-1, 1), ':t')) |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
271 call assert_equal('Xwindir1', fnamemodify(getcwd(1, 1), ':t')) |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
272 call assert_equal('Xtabdir1', fnamemodify(getcwd(2, 1), ':t')) |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
273 call assert_equal('Xtabdir2', fnamemodify(getcwd(-1, 2), ':t')) |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
274 call assert_equal('Xtabdir2', fnamemodify(getcwd(1, 2), ':t')) |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
275 call assert_equal('Xwindir2', fnamemodify(getcwd(2, 2), ':t')) |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
276 call assert_equal('Xtabdir3', fnamemodify(getcwd(-1, 3), ':t')) |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
277 call assert_equal('Xtabdir3', fnamemodify(getcwd(1, 3), ':t')) |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
278 call assert_equal('Xwindir3', fnamemodify(getcwd(2, 3), ':t')) |
18564
c14f5d3a205d
patch 8.1.2276: MS-Windows: session test leaves files behind
Bram Moolenaar <Bram@vim.org>
parents:
18562
diff
changeset
|
279 %bwipe |
c14f5d3a205d
patch 8.1.2276: MS-Windows: session test leaves files behind
Bram Moolenaar <Bram@vim.org>
parents:
18562
diff
changeset
|
280 call chdir(save_cwd) |
16427
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
281 call delete("Xtopdir", "rf") |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
282 endfunc |
8c3a1bd270bb
patch 8.1.1218: cannot set a directory for a tab page
Bram Moolenaar <Bram@vim.org>
parents:
15725
diff
changeset
|
283 |
14266
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
284 func Test_mksession_blank_tabs() |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
285 tabnew |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
286 tabnew |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
287 tabnew |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
288 tabnext 3 |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
289 mksession! Xtest_mks.out |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
290 tabnew |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
291 tabnew |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
292 tabnext 2 |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
293 source Xtest_mks.out |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
294 call assert_equal(4, tabpagenr('$'), 'session restore should restore number of tabs') |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
295 call assert_equal(3, tabpagenr(), 'session restore should restore the active tab') |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
296 call delete('Xtest_mks.out') |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
297 endfunc |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
298 |
15643
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
299 func Test_mksession_buffer_count() |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
300 set hidden |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
301 |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
302 " Edit exactly three files in the current session. |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
303 %bwipe! |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
304 e Xfoo | tabe Xbar | tabe Xbaz |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
305 tabdo write |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
306 mksession! Xtest_mks.out |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
307 |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
308 " Verify that loading the session does not create additional buffers. |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
309 %bwipe! |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
310 source Xtest_mks.out |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
311 call assert_equal(3, len(getbufinfo())) |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
312 |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
313 " Clean up. |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
314 call delete('Xfoo') |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
315 call delete('Xbar') |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
316 call delete('Xbaz') |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
317 call delete('Xtest_mks.out') |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
318 %bwipe! |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
319 set hidden& |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
320 endfunc |
dc2bfda59f95
patch 8.1.0829: when 'hidden' is set session creates extra buffers
Bram Moolenaar <Bram@vim.org>
parents:
15617
diff
changeset
|
321 |
15452
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
322 if has('extra_search') |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
323 |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
324 func Test_mksession_hlsearch() |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
325 set hlsearch |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
326 mksession! Xtest_mks.out |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
327 nohlsearch |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
328 source Xtest_mks.out |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
329 call assert_equal(1, v:hlsearch, 'session should restore search highlighting state') |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
330 nohlsearch |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
331 mksession! Xtest_mks.out |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
332 source Xtest_mks.out |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
333 call assert_equal(0, v:hlsearch, 'session should restore search highlighting state') |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
334 call delete('Xtest_mks.out') |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
335 endfunc |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
336 |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
337 endif |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
338 |
1c6a708a5fee
patch 8.1.0734: the hlsearch state is not stored in a session file
Bram Moolenaar <Bram@vim.org>
parents:
14646
diff
changeset
|
339 |
14266
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
340 func Test_mksession_blank_windows() |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
341 split |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
342 split |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
343 split |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
344 3 wincmd w |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
345 mksession! Xtest_mks.out |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
346 split |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
347 split |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
348 2 wincmd w |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
349 source Xtest_mks.out |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
350 call assert_equal(4, winnr('$'), 'session restore should restore number of windows') |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
351 call assert_equal(3, winnr(), 'session restore should restore the active window') |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
352 call delete('Xtest_mks.out') |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
353 endfunc |
7346b2ea80d8
patch 8.1.0149: session is wrong with multiple tabs when :lcd was used
Christian Brabandt <cb@256bit.org>
parents:
14057
diff
changeset
|
354 |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
355 if has('terminal') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
356 |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
357 func Test_mksession_terminal_shell() |
18767
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18564
diff
changeset
|
358 CheckFeature quickfix |
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18564
diff
changeset
|
359 |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
360 terminal |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
361 mksession! Xtest_mks.out |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
362 let lines = readfile('Xtest_mks.out') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
363 let term_cmd = '' |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
364 for line in lines |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
365 if line =~ '^terminal' |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
366 let term_cmd = line |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
367 elseif line =~ 'badd.*' . &shell |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
368 call assert_report('unexpected shell line: ' . line) |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
369 endif |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
370 endfor |
15725
a3e2e7948ee4
patch 8.1.0870: Vim doesn't use the new ConPTY support in Windows 10
Bram Moolenaar <Bram@vim.org>
parents:
15643
diff
changeset
|
371 call assert_match('terminal ++curwin ++cols=\d\+ ++rows=\d\+\s*.*$', term_cmd) |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
372 |
17164
7927cf327396
patch 8.1.1581: shared functions for testing are disorganised
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
373 call StopShellInTerminal(bufnr('%')) |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
374 call delete('Xtest_mks.out') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
375 endfunc |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
376 |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
377 func Test_mksession_terminal_no_restore_cmdarg() |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
378 terminal ++norestore |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
379 mksession! Xtest_mks.out |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
380 let lines = readfile('Xtest_mks.out') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
381 let term_cmd = '' |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
382 for line in lines |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
383 if line =~ '^terminal' |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
384 call assert_report('session must not restore teminal') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
385 endif |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
386 endfor |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
387 |
17164
7927cf327396
patch 8.1.1581: shared functions for testing are disorganised
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
388 call StopShellInTerminal(bufnr('%')) |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
389 call delete('Xtest_mks.out') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
390 endfunc |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
391 |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
392 func Test_mksession_terminal_no_restore_funcarg() |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
393 call term_start(&shell, {'norestore': 1}) |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
394 mksession! Xtest_mks.out |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
395 let lines = readfile('Xtest_mks.out') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
396 let term_cmd = '' |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
397 for line in lines |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
398 if line =~ '^terminal' |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
399 call assert_report('session must not restore teminal') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
400 endif |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
401 endfor |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
402 |
17164
7927cf327396
patch 8.1.1581: shared functions for testing are disorganised
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
403 call StopShellInTerminal(bufnr('%')) |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
404 call delete('Xtest_mks.out') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
405 endfunc |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
406 |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
407 func Test_mksession_terminal_no_restore_func() |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
408 terminal |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
409 call term_setrestore(bufnr('%'), 'NONE') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
410 mksession! Xtest_mks.out |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
411 let lines = readfile('Xtest_mks.out') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
412 let term_cmd = '' |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
413 for line in lines |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
414 if line =~ '^terminal' |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
415 call assert_report('session must not restore teminal') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
416 endif |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
417 endfor |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
418 |
17164
7927cf327396
patch 8.1.1581: shared functions for testing are disorganised
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
419 call StopShellInTerminal(bufnr('%')) |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
420 call delete('Xtest_mks.out') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
421 endfunc |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
422 |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
423 func Test_mksession_terminal_no_ssop() |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
424 terminal |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
425 set sessionoptions-=terminal |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
426 mksession! Xtest_mks.out |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
427 let lines = readfile('Xtest_mks.out') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
428 let term_cmd = '' |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
429 for line in lines |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
430 if line =~ '^terminal' |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
431 call assert_report('session must not restore teminal') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
432 endif |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
433 endfor |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
434 |
17164
7927cf327396
patch 8.1.1581: shared functions for testing are disorganised
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
435 call StopShellInTerminal(bufnr('%')) |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
436 call delete('Xtest_mks.out') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
437 set sessionoptions& |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
438 endfunc |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
439 |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
440 func Test_mksession_terminal_restore_other() |
18767
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18564
diff
changeset
|
441 CheckFeature quickfix |
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18564
diff
changeset
|
442 |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
443 terminal |
18033
049a7481d737
patch 8.1.2012: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17586
diff
changeset
|
444 eval bufnr('%')->term_setrestore('other') |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
445 mksession! Xtest_mks.out |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
446 let lines = readfile('Xtest_mks.out') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
447 let term_cmd = '' |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
448 for line in lines |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
449 if line =~ '^terminal' |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
450 let term_cmd = line |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
451 endif |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
452 endfor |
15725
a3e2e7948ee4
patch 8.1.0870: Vim doesn't use the new ConPTY support in Windows 10
Bram Moolenaar <Bram@vim.org>
parents:
15643
diff
changeset
|
453 call assert_match('terminal ++curwin ++cols=\d\+ ++rows=\d\+.*other', term_cmd) |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
454 |
17164
7927cf327396
patch 8.1.1581: shared functions for testing are disorganised
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
455 call StopShellInTerminal(bufnr('%')) |
13435
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
456 call delete('Xtest_mks.out') |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
457 endfunc |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
458 |
fa198b71bab2
patch 8.0.1592: terminal windows in a session are not properly restored
Christian Brabandt <cb@256bit.org>
parents:
12291
diff
changeset
|
459 endif " has('terminal') |
12289
294f510f6d35
patch 8.0.1024: folds lost when session file has a buffer in two windows
Christian Brabandt <cb@256bit.org>
parents:
10809
diff
changeset
|
460 |
14635
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
461 " Test :mkview with a file argument. |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
462 func Test_mkview_file() |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
463 " Create a view with line number and a fold. |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
464 help :mkview |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
465 set number |
14644
3d94bbf54530
patch 8.1.0335: mkview test fails on CI
Christian Brabandt <cb@256bit.org>
parents:
14640
diff
changeset
|
466 norm! V}zf0 |
14646
aa48ee3d3d12
patch 8.1.0336: mkview test still fails on CI
Christian Brabandt <cb@256bit.org>
parents:
14644
diff
changeset
|
467 let pos = getpos('.') |
14635
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
468 let linefoldclosed1 = foldclosed('.') |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
469 mkview! Xview |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
470 set nonumber |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
471 norm! zrj |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
472 " We can close the help window, as mkview with a file name should |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
473 " generate a command to edit the file. |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
474 helpclose |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
475 |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
476 source Xview |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
477 call assert_equal(1, &number) |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
478 call assert_match('\*:mkview\*$', getline('.')) |
14646
aa48ee3d3d12
patch 8.1.0336: mkview test still fails on CI
Christian Brabandt <cb@256bit.org>
parents:
14644
diff
changeset
|
479 call assert_equal(pos, getpos('.')) |
14635
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
480 call assert_equal(linefoldclosed1, foldclosed('.')) |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
481 |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
482 " Creating a view again with the same file name should fail (file |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
483 " already exists). But with a !, the previous view should be |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
484 " overwritten without error. |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
485 help :loadview |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
486 call assert_fails('mkview Xview', 'E189:') |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
487 call assert_match('\*:loadview\*$', getline('.')) |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
488 mkview! Xview |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
489 call assert_match('\*:loadview\*$', getline('.')) |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
490 |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
491 call delete('Xview') |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
492 bwipe |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
493 endfunc |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
494 |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
495 " Test :mkview and :loadview with a custom 'viewdir'. |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
496 func Test_mkview_loadview_with_viewdir() |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
497 set viewdir=Xviewdir |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
498 |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
499 help :mkview |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
500 set number |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
501 norm! V}zf |
14646
aa48ee3d3d12
patch 8.1.0336: mkview test still fails on CI
Christian Brabandt <cb@256bit.org>
parents:
14644
diff
changeset
|
502 let pos = getpos('.') |
14635
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
503 let linefoldclosed1 = foldclosed('.') |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
504 mkview 1 |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
505 set nonumber |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
506 norm! zrj |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
507 |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
508 loadview 1 |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
509 |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
510 " The directory Xviewdir/ should have been created and the view |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
511 " should be stored in that directory. |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
512 call assert_equal('Xviewdir/' . |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
513 \ substitute( |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
514 \ substitute( |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
515 \ expand('%:p'), '/', '=+', 'g'), ':', '=-', 'g') . '=1.vim', |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
516 \ glob('Xviewdir/*')) |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
517 call assert_equal(1, &number) |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
518 call assert_match('\*:mkview\*$', getline('.')) |
14646
aa48ee3d3d12
patch 8.1.0336: mkview test still fails on CI
Christian Brabandt <cb@256bit.org>
parents:
14644
diff
changeset
|
519 call assert_equal(pos, getpos('.')) |
14635
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
520 call assert_equal(linefoldclosed1, foldclosed('.')) |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
521 |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
522 call delete('Xviewdir', 'rf') |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
523 set viewdir& |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
524 helpclose |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
525 endfunc |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
526 |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
527 func Test_mkview_no_file_name() |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
528 new |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
529 " :mkview or :mkview {nr} should fail in a unnamed buffer. |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
530 call assert_fails('mkview', 'E32:') |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
531 call assert_fails('mkview 1', 'E32:') |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
532 |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
533 " :mkview {file} should succeed in a unnamed buffer. |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
534 mkview Xview |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
535 help |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
536 source Xview |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
537 call assert_equal('', bufname('%')) |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
538 |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
539 call delete('Xview') |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
540 %bwipe |
4f61eb88127c
patch 8.1.0331: insufficient test coverage for :mkview and :loadview
Christian Brabandt <cb@256bit.org>
parents:
14270
diff
changeset
|
541 endfunc |
10809
3adae5c1b1cd
patch 8.0.0294: argument list is not stored correctly in a session file
Christian Brabandt <cb@256bit.org>
parents:
10737
diff
changeset
|
542 |
15563
e6d2e41669b8
patch 8.1.0789: sourcing a session sets v:errmsg
Bram Moolenaar <Bram@vim.org>
parents:
15452
diff
changeset
|
543 " A clean session (one empty buffer, one window, and one tab) should not |
e6d2e41669b8
patch 8.1.0789: sourcing a session sets v:errmsg
Bram Moolenaar <Bram@vim.org>
parents:
15452
diff
changeset
|
544 " set any error messages when sourced because no commands should fail. |
e6d2e41669b8
patch 8.1.0789: sourcing a session sets v:errmsg
Bram Moolenaar <Bram@vim.org>
parents:
15452
diff
changeset
|
545 func Test_mksession_no_errmsg() |
e6d2e41669b8
patch 8.1.0789: sourcing a session sets v:errmsg
Bram Moolenaar <Bram@vim.org>
parents:
15452
diff
changeset
|
546 let v:errmsg = '' |
e6d2e41669b8
patch 8.1.0789: sourcing a session sets v:errmsg
Bram Moolenaar <Bram@vim.org>
parents:
15452
diff
changeset
|
547 %bwipe! |
e6d2e41669b8
patch 8.1.0789: sourcing a session sets v:errmsg
Bram Moolenaar <Bram@vim.org>
parents:
15452
diff
changeset
|
548 mksession! Xtest_mks.out |
e6d2e41669b8
patch 8.1.0789: sourcing a session sets v:errmsg
Bram Moolenaar <Bram@vim.org>
parents:
15452
diff
changeset
|
549 source Xtest_mks.out |
e6d2e41669b8
patch 8.1.0789: sourcing a session sets v:errmsg
Bram Moolenaar <Bram@vim.org>
parents:
15452
diff
changeset
|
550 call assert_equal('', v:errmsg) |
e6d2e41669b8
patch 8.1.0789: sourcing a session sets v:errmsg
Bram Moolenaar <Bram@vim.org>
parents:
15452
diff
changeset
|
551 call delete('Xtest_mks.out') |
e6d2e41669b8
patch 8.1.0789: sourcing a session sets v:errmsg
Bram Moolenaar <Bram@vim.org>
parents:
15452
diff
changeset
|
552 endfunc |
e6d2e41669b8
patch 8.1.0789: sourcing a session sets v:errmsg
Bram Moolenaar <Bram@vim.org>
parents:
15452
diff
changeset
|
553 |
15591
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
554 func Test_mksession_quote_in_filename() |
15599
9da8ae285a02
patch 8.1.0807: session test fails on MS-Windows
Bram Moolenaar <Bram@vim.org>
parents:
15591
diff
changeset
|
555 if !has('unix') |
9da8ae285a02
patch 8.1.0807: session test fails on MS-Windows
Bram Moolenaar <Bram@vim.org>
parents:
15591
diff
changeset
|
556 " only Unix can handle this weird filename |
9da8ae285a02
patch 8.1.0807: session test fails on MS-Windows
Bram Moolenaar <Bram@vim.org>
parents:
15591
diff
changeset
|
557 return |
9da8ae285a02
patch 8.1.0807: session test fails on MS-Windows
Bram Moolenaar <Bram@vim.org>
parents:
15591
diff
changeset
|
558 endif |
15591
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
559 let v:errmsg = '' |
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
560 %bwipe! |
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
561 split another |
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
562 split x'y\"z |
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
563 mksession! Xtest_mks_quoted.out |
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
564 %bwipe! |
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
565 source Xtest_mks_quoted.out |
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
566 call assert_true(bufexists("x'y\"z")) |
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
567 |
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
568 %bwipe! |
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
569 call delete('Xtest_mks_quoted.out') |
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
570 endfunc |
3a2bf24d2655
patch 8.1.0803: session file has problem with single quote in file name
Bram Moolenaar <Bram@vim.org>
parents:
15563
diff
changeset
|
571 |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
572 " Test for storing global variables in a session file |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
573 func Test_mksession_globals() |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
574 set sessionoptions+=globals |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
575 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
576 " create different global variables |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
577 let g:Global_string = "Sun is shining\r\n" |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
578 let g:Global_count = 100 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
579 let g:Global_pi = 3.14 |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
580 let g:Global_neg_float = -2.68 |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
581 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
582 mksession! Xtest_mks.out |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
583 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
584 unlet g:Global_string |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
585 unlet g:Global_count |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
586 unlet g:Global_pi |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
587 unlet g:Global_neg_float |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
588 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
589 source Xtest_mks.out |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
590 call assert_equal("Sun is shining\r\n", g:Global_string) |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
591 call assert_equal(100, g:Global_count) |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
592 call assert_equal(3.14, g:Global_pi) |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
593 call assert_equal(-2.68, g:Global_neg_float) |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
594 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
595 unlet g:Global_string |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
596 unlet g:Global_count |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
597 unlet g:Global_pi |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
598 unlet g:Global_neg_float |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
599 call delete('Xtest_mks.out') |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
600 set sessionoptions& |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
601 endfunc |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
602 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
603 " Test for changing backslash to forward slash in filenames |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
604 func Test_mksession_slash() |
18207
f93c2b6f7167
patch 8.1.2098: mksession test fails on MS-Windows
Bram Moolenaar <Bram@vim.org>
parents:
18205
diff
changeset
|
605 if exists('+shellslash') |
f93c2b6f7167
patch 8.1.2098: mksession test fails on MS-Windows
Bram Moolenaar <Bram@vim.org>
parents:
18205
diff
changeset
|
606 throw 'Skipped: cannot use backslash in file name' |
f93c2b6f7167
patch 8.1.2098: mksession test fails on MS-Windows
Bram Moolenaar <Bram@vim.org>
parents:
18205
diff
changeset
|
607 endif |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
608 enew |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
609 %bwipe! |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
610 e a\\b\\c |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
611 mksession! Xtest_mks1.out |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
612 set sessionoptions+=slash |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
613 mksession! Xtest_mks2.out |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
614 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
615 %bwipe! |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
616 source Xtest_mks1.out |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
617 call assert_equal('a\b\c', bufname('')) |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
618 %bwipe! |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
619 source Xtest_mks2.out |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
620 call assert_equal('a/b/c', bufname('')) |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
621 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
622 %bwipe! |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
623 call delete('Xtest_mks1.out') |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
624 call delete('Xtest_mks2.out') |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
625 set sessionoptions& |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
626 endfunc |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
627 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
628 " Test for changing directory to the session file directory |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
629 func Test_mksession_sesdir() |
18564
c14f5d3a205d
patch 8.1.2276: MS-Windows: session test leaves files behind
Bram Moolenaar <Bram@vim.org>
parents:
18562
diff
changeset
|
630 let save_cwd = getcwd() |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
631 call mkdir('Xproj') |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
632 mksession! Xproj/Xtest_mks1.out |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
633 set sessionoptions-=curdir |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
634 set sessionoptions+=sesdir |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
635 mksession! Xproj/Xtest_mks2.out |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
636 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
637 source Xproj/Xtest_mks1.out |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
638 call assert_equal('testdir', fnamemodify(getcwd(), ':t')) |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
639 source Xproj/Xtest_mks2.out |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
640 call assert_equal('Xproj', fnamemodify(getcwd(), ':t')) |
18564
c14f5d3a205d
patch 8.1.2276: MS-Windows: session test leaves files behind
Bram Moolenaar <Bram@vim.org>
parents:
18562
diff
changeset
|
641 call chdir(save_cwd) |
c14f5d3a205d
patch 8.1.2276: MS-Windows: session test leaves files behind
Bram Moolenaar <Bram@vim.org>
parents:
18562
diff
changeset
|
642 %bwipe |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
643 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
644 set sessionoptions& |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
645 call delete('Xproj', 'rf') |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
646 endfunc |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
647 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
648 " Test for storing the 'lines' and 'columns' settings |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
649 func Test_mksession_resize() |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
650 mksession! Xtest_mks1.out |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
651 set sessionoptions+=resize |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
652 mksession! Xtest_mks2.out |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
653 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
654 let lines = readfile('Xtest_mks1.out') |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
655 let found_resize = v:false |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
656 for line in lines |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
657 if line =~ '^set lines=' |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
658 let found_resize = v:true |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
659 break |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
660 endif |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
661 endfor |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
662 call assert_false(found_resize) |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
663 let lines = readfile('Xtest_mks2.out') |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
664 let found_resize = v:false |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
665 for line in lines |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
666 if line =~ '^set lines=' |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
667 let found_resize = v:true |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
668 break |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
669 endif |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
670 endfor |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
671 call assert_true(found_resize) |
18205
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
672 |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
673 call delete('Xtest_mks1.out') |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
674 call delete('Xtest_mks2.out') |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
675 set sessionoptions& |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
676 endfunc |
e2feda1547bd
patch 8.1.2097: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18033
diff
changeset
|
677 |
18211
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
678 " Test for mksession with a named scratch buffer |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
679 func Test_mksession_scratch() |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
680 enew | only |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
681 file Xscratch |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
682 set buftype=nofile |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
683 mksession! Xtest_mks.out |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
684 %bwipe |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
685 source Xtest_mks.out |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
686 call assert_equal('Xscratch', bufname('')) |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
687 call assert_equal('nofile', &buftype) |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
688 %bwipe |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
689 call delete('Xtest_mks.out') |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
690 endfunc |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
691 |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
692 " Test for mksession with fold options |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
693 func Test_mksession_foldopt() |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
694 set sessionoptions-=options |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
695 set sessionoptions+=folds |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
696 new |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
697 setlocal foldenable |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
698 setlocal foldmethod=expr |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
699 setlocal foldmarker=<<<,>>> |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
700 setlocal foldignore=% |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
701 setlocal foldlevel=2 |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
702 setlocal foldminlines=10 |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
703 setlocal foldnestmax=15 |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
704 mksession! Xtest_mks.out |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
705 close |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
706 %bwipe |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
707 |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
708 source Xtest_mks.out |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
709 call assert_true(&foldenable) |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
710 call assert_equal('expr', &foldmethod) |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
711 call assert_equal('<<<,>>>', &foldmarker) |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
712 call assert_equal('%', &foldignore) |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
713 call assert_equal(2, &foldlevel) |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
714 call assert_equal(10, &foldminlines) |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
715 call assert_equal(15, &foldnestmax) |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
716 |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
717 close |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
718 %bwipe |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
719 set sessionoptions& |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
720 endfunc |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
721 |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
722 " Test for mksession with window position |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
723 func Test_mksession_winpos() |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
724 if !has('gui_running') |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
725 " Only applicable in GUI Vim |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
726 return |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
727 endif |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
728 set sessionoptions+=winpos |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
729 mksession! Xtest_mks.out |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
730 let found_winpos = v:false |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
731 let lines = readfile('Xtest_mks.out') |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
732 for line in lines |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
733 if line =~ '^winpos ' |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
734 let found_winpos = v:true |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
735 break |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
736 endif |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
737 endfor |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
738 call assert_true(found_winpos) |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
739 call delete('Xtest_mks.out') |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
740 set sessionoptions& |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
741 endfunc |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
742 |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
743 " Test for mksession with 'compatible' option |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
744 func Test_mksession_compatible() |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
745 mksession! Xtest_mks1.out |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
746 set compatible |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
747 mksession! Xtest_mks2.out |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
748 set nocp |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
749 |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
750 let test_success = v:false |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
751 let lines = readfile('Xtest_mks1.out') |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
752 for line in lines |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
753 if line =~ '^if &cp | set nocp | endif' |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
754 let test_success = v:true |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
755 break |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
756 endif |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
757 endfor |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
758 call assert_true(test_success) |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
759 |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
760 let test_success = v:false |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
761 let lines = readfile('Xtest_mks2.out') |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
762 for line in lines |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
763 if line =~ '^if !&cp | set cp | endif' |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
764 let test_success = v:true |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
765 break |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
766 endif |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
767 endfor |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
768 call assert_true(test_success) |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
769 |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
770 call delete('Xtest_mks1.out') |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
771 call delete('Xtest_mks2.out') |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
772 set compatible& |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
773 set sessionoptions& |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
774 endfunc |
a493ab8e57ab
patch 8.1.2100: :mksession is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18207
diff
changeset
|
775 |
17586
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
776 func s:ClearMappings() |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
777 mapclear |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
778 omapclear |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
779 mapclear! |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
780 lmapclear |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
781 tmapclear |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
782 endfunc |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
783 |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
784 func Test_mkvimrc() |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
785 let entries = [ |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
786 \ ['', 'nothing', '<Nop>'], |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
787 \ ['n', 'normal', 'NORMAL'], |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
788 \ ['v', 'visual', 'VISUAL'], |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
789 \ ['s', 'select', 'SELECT'], |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
790 \ ['x', 'visualonly', 'VISUALONLY'], |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
791 \ ['o', 'operator', 'OPERATOR'], |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
792 \ ['i', 'insert', 'INSERT'], |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
793 \ ['l', 'lang', 'LANG'], |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
794 \ ['c', 'command', 'COMMAND'], |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
795 \ ['t', 'terminal', 'TERMINAL'], |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
796 \ ] |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
797 for entry in entries |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
798 exe entry[0] .. 'map ' .. entry[1] .. ' ' .. entry[2] |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
799 endfor |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
800 |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
801 mkvimrc Xtestvimrc |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
802 |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
803 call s:ClearMappings() |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
804 for entry in entries |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
805 call assert_equal('', maparg(entry[1], entry[0])) |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
806 endfor |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
807 |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
808 source Xtestvimrc |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
809 |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
810 for entry in entries |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
811 call assert_equal(entry[2], maparg(entry[1], entry[0])) |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
812 endfor |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
813 |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
814 call s:ClearMappings() |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
815 call delete('Xtestvimrc') |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
816 endfunc |
ea5d6716b82e
patch 8.1.1790: :mkvimrc is not tested
Bram Moolenaar <Bram@vim.org>
parents:
17164
diff
changeset
|
817 |
10436
cb856404d060
commit https://github.com/vim/vim/commit/eca626fcdb73d480660c78b9f84cc043fa561922
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
818 " vim: shiftwidth=2 sts=2 expandtab |