Mercurial > vim
annotate src/testdir/test_options.vim @ 14093:a9d94f10ecef v8.1.0064
patch 8.1.0064: typing CTRL-W in a prompt buffer shows mode "-- --"
commit https://github.com/vim/vim/commit/942b4541a2d8e8df8369ab70e112dbbbe0c7c0aa
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Jun 17 16:23:34 2018 +0200
patch 8.1.0064: typing CTRL-W in a prompt buffer shows mode "-- --"
Problem: Typing CTRL-W in a prompt buffer shows mode "-- --".
Solution: Set restart_edit to 'A' and check for it.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 17 Jun 2018 16:30:06 +0200 |
parents | fc03fabbedc5 |
children | 20468fb49f9b |
rev | line source |
---|---|
9798
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
1 " Test for options |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
2 |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
3 function! Test_whichwrap() |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
4 set whichwrap=b,s |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
5 call assert_equal('b,s', &whichwrap) |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
6 |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
7 set whichwrap+=h,l |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
8 call assert_equal('b,s,h,l', &whichwrap) |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
9 |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
10 set whichwrap+=h,l |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
11 call assert_equal('b,s,h,l', &whichwrap) |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
12 |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
13 set whichwrap+=h,l |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
14 call assert_equal('b,s,h,l', &whichwrap) |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
15 |
10831
e926c5a7f9bf
patch 8.0.0305: invalid memory access when option has duplicate flag
Christian Brabandt <cb@256bit.org>
parents:
10823
diff
changeset
|
16 set whichwrap=h,h |
e926c5a7f9bf
patch 8.0.0305: invalid memory access when option has duplicate flag
Christian Brabandt <cb@256bit.org>
parents:
10823
diff
changeset
|
17 call assert_equal('h', &whichwrap) |
e926c5a7f9bf
patch 8.0.0305: invalid memory access when option has duplicate flag
Christian Brabandt <cb@256bit.org>
parents:
10823
diff
changeset
|
18 |
e926c5a7f9bf
patch 8.0.0305: invalid memory access when option has duplicate flag
Christian Brabandt <cb@256bit.org>
parents:
10823
diff
changeset
|
19 set whichwrap=h,h,h |
e926c5a7f9bf
patch 8.0.0305: invalid memory access when option has duplicate flag
Christian Brabandt <cb@256bit.org>
parents:
10823
diff
changeset
|
20 call assert_equal('h', &whichwrap) |
e926c5a7f9bf
patch 8.0.0305: invalid memory access when option has duplicate flag
Christian Brabandt <cb@256bit.org>
parents:
10823
diff
changeset
|
21 |
9798
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
22 set whichwrap& |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
23 endfunction |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
24 |
10932
141fe140976c
patch 8.0.0355: using uninitialized memory when 'isfname' is empty
Christian Brabandt <cb@256bit.org>
parents:
10906
diff
changeset
|
25 function! Test_isfname() |
141fe140976c
patch 8.0.0355: using uninitialized memory when 'isfname' is empty
Christian Brabandt <cb@256bit.org>
parents:
10906
diff
changeset
|
26 " This used to cause Vim to access uninitialized memory. |
141fe140976c
patch 8.0.0355: using uninitialized memory when 'isfname' is empty
Christian Brabandt <cb@256bit.org>
parents:
10906
diff
changeset
|
27 set isfname= |
141fe140976c
patch 8.0.0355: using uninitialized memory when 'isfname' is empty
Christian Brabandt <cb@256bit.org>
parents:
10906
diff
changeset
|
28 call assert_equal("~X", expand("~X")) |
141fe140976c
patch 8.0.0355: using uninitialized memory when 'isfname' is empty
Christian Brabandt <cb@256bit.org>
parents:
10906
diff
changeset
|
29 set isfname& |
141fe140976c
patch 8.0.0355: using uninitialized memory when 'isfname' is empty
Christian Brabandt <cb@256bit.org>
parents:
10906
diff
changeset
|
30 endfunction |
141fe140976c
patch 8.0.0355: using uninitialized memory when 'isfname' is empty
Christian Brabandt <cb@256bit.org>
parents:
10906
diff
changeset
|
31 |
10962
6da4287fd735
patch 8.0.0370: invalid memory access when setting wildchar empty
Christian Brabandt <cb@256bit.org>
parents:
10958
diff
changeset
|
32 function Test_wildchar() |
6da4287fd735
patch 8.0.0370: invalid memory access when setting wildchar empty
Christian Brabandt <cb@256bit.org>
parents:
10958
diff
changeset
|
33 " Empty 'wildchar' used to access invalid memory. |
6da4287fd735
patch 8.0.0370: invalid memory access when setting wildchar empty
Christian Brabandt <cb@256bit.org>
parents:
10958
diff
changeset
|
34 call assert_fails('set wildchar=', 'E521:') |
6da4287fd735
patch 8.0.0370: invalid memory access when setting wildchar empty
Christian Brabandt <cb@256bit.org>
parents:
10958
diff
changeset
|
35 call assert_fails('set wildchar=abc', 'E521:') |
6da4287fd735
patch 8.0.0370: invalid memory access when setting wildchar empty
Christian Brabandt <cb@256bit.org>
parents:
10958
diff
changeset
|
36 set wildchar=<Esc> |
6da4287fd735
patch 8.0.0370: invalid memory access when setting wildchar empty
Christian Brabandt <cb@256bit.org>
parents:
10958
diff
changeset
|
37 let a=execute('set wildchar?') |
6da4287fd735
patch 8.0.0370: invalid memory access when setting wildchar empty
Christian Brabandt <cb@256bit.org>
parents:
10958
diff
changeset
|
38 call assert_equal("\n wildchar=<Esc>", a) |
6da4287fd735
patch 8.0.0370: invalid memory access when setting wildchar empty
Christian Brabandt <cb@256bit.org>
parents:
10958
diff
changeset
|
39 set wildchar=27 |
6da4287fd735
patch 8.0.0370: invalid memory access when setting wildchar empty
Christian Brabandt <cb@256bit.org>
parents:
10958
diff
changeset
|
40 let a=execute('set wildchar?') |
6da4287fd735
patch 8.0.0370: invalid memory access when setting wildchar empty
Christian Brabandt <cb@256bit.org>
parents:
10958
diff
changeset
|
41 call assert_equal("\n wildchar=<Esc>", a) |
6da4287fd735
patch 8.0.0370: invalid memory access when setting wildchar empty
Christian Brabandt <cb@256bit.org>
parents:
10958
diff
changeset
|
42 set wildchar& |
6da4287fd735
patch 8.0.0370: invalid memory access when setting wildchar empty
Christian Brabandt <cb@256bit.org>
parents:
10958
diff
changeset
|
43 endfunction |
6da4287fd735
patch 8.0.0370: invalid memory access when setting wildchar empty
Christian Brabandt <cb@256bit.org>
parents:
10958
diff
changeset
|
44 |
9852
4eea48b76d03
commit https://github.com/vim/vim/commit/95ec9d6a6ab3117d60ff638670a803d43974ba51
Christian Brabandt <cb@256bit.org>
parents:
9798
diff
changeset
|
45 function Test_options() |
9798
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
46 let caught = 'ok' |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
47 try |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
48 options |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
49 catch |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
50 let caught = v:throwpoint . "\n" . v:exception |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
51 endtry |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
52 call assert_equal('ok', caught) |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
53 |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
54 " close option-window |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
55 close |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
56 endfunction |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
57 |
9852
4eea48b76d03
commit https://github.com/vim/vim/commit/95ec9d6a6ab3117d60ff638670a803d43974ba51
Christian Brabandt <cb@256bit.org>
parents:
9798
diff
changeset
|
58 function Test_path_keep_commas() |
9798
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
59 " Test that changing 'path' keeps two commas. |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
60 set path=foo,,bar |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
61 set path-=bar |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
62 set path+=bar |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
63 call assert_equal('foo,,bar', &path) |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
64 |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
65 set path& |
e34e4547f3d1
commit https://github.com/vim/vim/commit/c8ce615299b4d8c1b2e6cf83496f48cd497d8a37
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
66 endfunction |
9852
4eea48b76d03
commit https://github.com/vim/vim/commit/95ec9d6a6ab3117d60ff638670a803d43974ba51
Christian Brabandt <cb@256bit.org>
parents:
9798
diff
changeset
|
67 |
4eea48b76d03
commit https://github.com/vim/vim/commit/95ec9d6a6ab3117d60ff638670a803d43974ba51
Christian Brabandt <cb@256bit.org>
parents:
9798
diff
changeset
|
68 func Test_signcolumn() |
9856
12c5c2614432
commit https://github.com/vim/vim/commit/ebcccad573a7722e16cf2dd435cc62b61f61d9cc
Christian Brabandt <cb@256bit.org>
parents:
9852
diff
changeset
|
69 if has('signs') |
12c5c2614432
commit https://github.com/vim/vim/commit/ebcccad573a7722e16cf2dd435cc62b61f61d9cc
Christian Brabandt <cb@256bit.org>
parents:
9852
diff
changeset
|
70 call assert_equal("auto", &signcolumn) |
12c5c2614432
commit https://github.com/vim/vim/commit/ebcccad573a7722e16cf2dd435cc62b61f61d9cc
Christian Brabandt <cb@256bit.org>
parents:
9852
diff
changeset
|
71 set signcolumn=yes |
12c5c2614432
commit https://github.com/vim/vim/commit/ebcccad573a7722e16cf2dd435cc62b61f61d9cc
Christian Brabandt <cb@256bit.org>
parents:
9852
diff
changeset
|
72 set signcolumn=no |
12c5c2614432
commit https://github.com/vim/vim/commit/ebcccad573a7722e16cf2dd435cc62b61f61d9cc
Christian Brabandt <cb@256bit.org>
parents:
9852
diff
changeset
|
73 call assert_fails('set signcolumn=nope') |
12c5c2614432
commit https://github.com/vim/vim/commit/ebcccad573a7722e16cf2dd435cc62b61f61d9cc
Christian Brabandt <cb@256bit.org>
parents:
9852
diff
changeset
|
74 endif |
9852
4eea48b76d03
commit https://github.com/vim/vim/commit/95ec9d6a6ab3117d60ff638670a803d43974ba51
Christian Brabandt <cb@256bit.org>
parents:
9798
diff
changeset
|
75 endfunc |
4eea48b76d03
commit https://github.com/vim/vim/commit/95ec9d6a6ab3117d60ff638670a803d43974ba51
Christian Brabandt <cb@256bit.org>
parents:
9798
diff
changeset
|
76 |
10322
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
77 func Test_filetype_valid() |
10324
ecbd3412f214
commit https://github.com/vim/vim/commit/9376f5f482a4d579436bf364778c2d8ab8e2f22d
Christian Brabandt <cb@256bit.org>
parents:
10322
diff
changeset
|
78 if !has('autocmd') |
ecbd3412f214
commit https://github.com/vim/vim/commit/9376f5f482a4d579436bf364778c2d8ab8e2f22d
Christian Brabandt <cb@256bit.org>
parents:
10322
diff
changeset
|
79 return |
ecbd3412f214
commit https://github.com/vim/vim/commit/9376f5f482a4d579436bf364778c2d8ab8e2f22d
Christian Brabandt <cb@256bit.org>
parents:
10322
diff
changeset
|
80 endif |
10322
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
81 set ft=valid_name |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
82 call assert_equal("valid_name", &filetype) |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
83 set ft=valid-name |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
84 call assert_equal("valid-name", &filetype) |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
85 |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
86 call assert_fails(":set ft=wrong;name", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
87 call assert_fails(":set ft=wrong\\\\name", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
88 call assert_fails(":set ft=wrong\\|name", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
89 call assert_fails(":set ft=wrong/name", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
90 call assert_fails(":set ft=wrong\\\nname", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
91 call assert_equal("valid-name", &filetype) |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
92 |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
93 exe "set ft=trunc\x00name" |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
94 call assert_equal("trunc", &filetype) |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
95 endfunc |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
96 |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
97 func Test_syntax_valid() |
10324
ecbd3412f214
commit https://github.com/vim/vim/commit/9376f5f482a4d579436bf364778c2d8ab8e2f22d
Christian Brabandt <cb@256bit.org>
parents:
10322
diff
changeset
|
98 if !has('syntax') |
ecbd3412f214
commit https://github.com/vim/vim/commit/9376f5f482a4d579436bf364778c2d8ab8e2f22d
Christian Brabandt <cb@256bit.org>
parents:
10322
diff
changeset
|
99 return |
ecbd3412f214
commit https://github.com/vim/vim/commit/9376f5f482a4d579436bf364778c2d8ab8e2f22d
Christian Brabandt <cb@256bit.org>
parents:
10322
diff
changeset
|
100 endif |
10322
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
101 set syn=valid_name |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
102 call assert_equal("valid_name", &syntax) |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
103 set syn=valid-name |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
104 call assert_equal("valid-name", &syntax) |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
105 |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
106 call assert_fails(":set syn=wrong;name", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
107 call assert_fails(":set syn=wrong\\\\name", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
108 call assert_fails(":set syn=wrong\\|name", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
109 call assert_fails(":set syn=wrong/name", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
110 call assert_fails(":set syn=wrong\\\nname", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
111 call assert_equal("valid-name", &syntax) |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
112 |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
113 exe "set syn=trunc\x00name" |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
114 call assert_equal("trunc", &syntax) |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
115 endfunc |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
116 |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
117 func Test_keymap_valid() |
10324
ecbd3412f214
commit https://github.com/vim/vim/commit/9376f5f482a4d579436bf364778c2d8ab8e2f22d
Christian Brabandt <cb@256bit.org>
parents:
10322
diff
changeset
|
118 if !has('keymap') |
ecbd3412f214
commit https://github.com/vim/vim/commit/9376f5f482a4d579436bf364778c2d8ab8e2f22d
Christian Brabandt <cb@256bit.org>
parents:
10322
diff
changeset
|
119 return |
ecbd3412f214
commit https://github.com/vim/vim/commit/9376f5f482a4d579436bf364778c2d8ab8e2f22d
Christian Brabandt <cb@256bit.org>
parents:
10322
diff
changeset
|
120 endif |
10322
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
121 call assert_fails(":set kmp=valid_name", "E544:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
122 call assert_fails(":set kmp=valid_name", "valid_name") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
123 call assert_fails(":set kmp=valid-name", "E544:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
124 call assert_fails(":set kmp=valid-name", "valid-name") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
125 |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
126 call assert_fails(":set kmp=wrong;name", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
127 call assert_fails(":set kmp=wrong\\\\name", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
128 call assert_fails(":set kmp=wrong\\|name", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
129 call assert_fails(":set kmp=wrong/name", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
130 call assert_fails(":set kmp=wrong\\\nname", "E474:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
131 |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
132 call assert_fails(":set kmp=trunc\x00name", "E544:") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
133 call assert_fails(":set kmp=trunc\x00name", "trunc") |
5adc318767be
commit https://github.com/vim/vim/commit/d0b5138ba4bccff8a744c99836041ef6322ed39a
Christian Brabandt <cb@256bit.org>
parents:
9856
diff
changeset
|
134 endfunc |
10416
ef5474130b0e
commit https://github.com/vim/vim/commit/7554da4033498c4da0af3cde542c3e87e9097b73
Christian Brabandt <cb@256bit.org>
parents:
10324
diff
changeset
|
135 |
10420
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
136 func Check_dir_option(name) |
10416
ef5474130b0e
commit https://github.com/vim/vim/commit/7554da4033498c4da0af3cde542c3e87e9097b73
Christian Brabandt <cb@256bit.org>
parents:
10324
diff
changeset
|
137 " Check that it's possible to set the option. |
10420
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
138 exe 'set ' . a:name . '=/usr/share/dict/words' |
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
139 call assert_equal('/usr/share/dict/words', eval('&' . a:name)) |
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
140 exe 'set ' . a:name . '=/usr/share/dict/words,/and/there' |
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
141 call assert_equal('/usr/share/dict/words,/and/there', eval('&' . a:name)) |
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
142 exe 'set ' . a:name . '=/usr/share/dict\ words' |
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
143 call assert_equal('/usr/share/dict words', eval('&' . a:name)) |
10416
ef5474130b0e
commit https://github.com/vim/vim/commit/7554da4033498c4da0af3cde542c3e87e9097b73
Christian Brabandt <cb@256bit.org>
parents:
10324
diff
changeset
|
144 |
ef5474130b0e
commit https://github.com/vim/vim/commit/7554da4033498c4da0af3cde542c3e87e9097b73
Christian Brabandt <cb@256bit.org>
parents:
10324
diff
changeset
|
145 " Check rejecting weird characters. |
10420
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
146 call assert_fails("set " . a:name . "=/not&there", "E474:") |
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
147 call assert_fails("set " . a:name . "=/not>there", "E474:") |
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
148 call assert_fails("set " . a:name . "=/not.*there", "E474:") |
10416
ef5474130b0e
commit https://github.com/vim/vim/commit/7554da4033498c4da0af3cde542c3e87e9097b73
Christian Brabandt <cb@256bit.org>
parents:
10324
diff
changeset
|
149 endfunc |
10420
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
150 |
10938
3b82ab325d59
patch 8.0.0358: invalid memory access in C-indent code
Christian Brabandt <cb@256bit.org>
parents:
10936
diff
changeset
|
151 func Test_cinkeys() |
3b82ab325d59
patch 8.0.0358: invalid memory access in C-indent code
Christian Brabandt <cb@256bit.org>
parents:
10936
diff
changeset
|
152 " This used to cause invalid memory access |
3b82ab325d59
patch 8.0.0358: invalid memory access in C-indent code
Christian Brabandt <cb@256bit.org>
parents:
10936
diff
changeset
|
153 set cindent cinkeys=0 |
3b82ab325d59
patch 8.0.0358: invalid memory access in C-indent code
Christian Brabandt <cb@256bit.org>
parents:
10936
diff
changeset
|
154 norm a |
3b82ab325d59
patch 8.0.0358: invalid memory access in C-indent code
Christian Brabandt <cb@256bit.org>
parents:
10936
diff
changeset
|
155 set cindent& cinkeys& |
3b82ab325d59
patch 8.0.0358: invalid memory access in C-indent code
Christian Brabandt <cb@256bit.org>
parents:
10936
diff
changeset
|
156 endfunc |
3b82ab325d59
patch 8.0.0358: invalid memory access in C-indent code
Christian Brabandt <cb@256bit.org>
parents:
10936
diff
changeset
|
157 |
10420
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
158 func Test_dictionary() |
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
159 call Check_dir_option('dictionary') |
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
160 endfunc |
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
161 |
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
162 func Test_thesaurus() |
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
163 call Check_dir_option('thesaurus') |
10823
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
164 endfun |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
165 |
10887
40939b171432
patch 8.0.0333: illegal memory access when 'complete' ends in a backslash
Christian Brabandt <cb@256bit.org>
parents:
10831
diff
changeset
|
166 func Test_complete() |
40939b171432
patch 8.0.0333: illegal memory access when 'complete' ends in a backslash
Christian Brabandt <cb@256bit.org>
parents:
10831
diff
changeset
|
167 " Trailing single backslash used to cause invalid memory access. |
40939b171432
patch 8.0.0333: illegal memory access when 'complete' ends in a backslash
Christian Brabandt <cb@256bit.org>
parents:
10831
diff
changeset
|
168 set complete=s\ |
40939b171432
patch 8.0.0333: illegal memory access when 'complete' ends in a backslash
Christian Brabandt <cb@256bit.org>
parents:
10831
diff
changeset
|
169 new |
40939b171432
patch 8.0.0333: illegal memory access when 'complete' ends in a backslash
Christian Brabandt <cb@256bit.org>
parents:
10831
diff
changeset
|
170 call feedkeys("i\<C-N>\<Esc>", 'xt') |
40939b171432
patch 8.0.0333: illegal memory access when 'complete' ends in a backslash
Christian Brabandt <cb@256bit.org>
parents:
10831
diff
changeset
|
171 bwipe! |
40939b171432
patch 8.0.0333: illegal memory access when 'complete' ends in a backslash
Christian Brabandt <cb@256bit.org>
parents:
10831
diff
changeset
|
172 set complete& |
40939b171432
patch 8.0.0333: illegal memory access when 'complete' ends in a backslash
Christian Brabandt <cb@256bit.org>
parents:
10831
diff
changeset
|
173 endfun |
40939b171432
patch 8.0.0333: illegal memory access when 'complete' ends in a backslash
Christian Brabandt <cb@256bit.org>
parents:
10831
diff
changeset
|
174 |
10823
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
175 func Test_set_completion() |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
176 call feedkeys(":set di\<C-A>\<C-B>\"\<CR>", 'tx') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
177 call assert_equal('"set dictionary diff diffexpr diffopt digraph directory display', @:) |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
178 |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
179 " Expand boolan options. When doing :set no<Tab> |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
180 " vim displays the options names without "no" but completion uses "no...". |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
181 call feedkeys(":set nodi\<C-A>\<C-B>\"\<CR>", 'tx') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
182 call assert_equal('"set nodiff digraph', @:) |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
183 |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
184 call feedkeys(":set invdi\<C-A>\<C-B>\"\<CR>", 'tx') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
185 call assert_equal('"set invdiff digraph', @:) |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
186 |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
187 " Expand abbreviation of options. |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
188 call feedkeys(":set ts\<C-A>\<C-B>\"\<CR>", 'tx') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
189 call assert_equal('"set tabstop thesaurus ttyscroll', @:) |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
190 |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
191 " Expand current value |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
192 call feedkeys(":set fileencodings=\<C-A>\<C-B>\"\<CR>", 'tx') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
193 call assert_equal('"set fileencodings=ucs-bom,utf-8,default,latin1', @:) |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
194 |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
195 call feedkeys(":set fileencodings:\<C-A>\<C-B>\"\<CR>", 'tx') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
196 call assert_equal('"set fileencodings:ucs-bom,utf-8,default,latin1', @:) |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
197 |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
198 " Expand key codes. |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
199 call feedkeys(":set <H\<C-A>\<C-B>\"\<CR>", 'tx') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
200 call assert_equal('"set <Help> <Home>', @:) |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
201 |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
202 " Expand terminal options. |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
203 call feedkeys(":set t_A\<C-A>\<C-B>\"\<CR>", 'tx') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
204 call assert_equal('"set t_AB t_AF t_AL', @:) |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
205 |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
206 " Expand directories. |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
207 call feedkeys(":set cdpath=./\<C-A>\<C-B>\"\<CR>", 'tx') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
208 call assert_match(' ./samples/ ', @:) |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
209 call assert_notmatch(' ./small.vim ', @:) |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
210 |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
211 " Expand files and directories. |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
212 call feedkeys(":set tags=./\<C-A>\<C-B>\"\<CR>", 'tx') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
213 call assert_match(' ./samples/.* ./small.vim', @:) |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
214 |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
215 call feedkeys(":set tags=./\\\\ dif\<C-A>\<C-B>\"\<CR>", 'tx') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
216 call assert_equal('"set tags=./\\ diff diffexpr diffopt', @:) |
10420
7a631c6b0a20
commit https://github.com/vim/vim/commit/f422bcc7f9615fe91fa69b059cfe4785093d3d4a
Christian Brabandt <cb@256bit.org>
parents:
10416
diff
changeset
|
217 endfunc |
10823
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
218 |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
219 func Test_set_errors() |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
220 call assert_fails('set scroll=-1', 'E49:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
221 call assert_fails('set backupcopy=', 'E474:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
222 call assert_fails('set regexpengine=3', 'E474:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
223 call assert_fails('set history=10001', 'E474:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
224 call assert_fails('set numberwidth=11', 'E474:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
225 call assert_fails('set colorcolumn=-a') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
226 call assert_fails('set colorcolumn=a') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
227 call assert_fails('set colorcolumn=1,') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
228 call assert_fails('set cmdheight=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
229 call assert_fails('set cmdwinheight=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
230 if has('conceal') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
231 call assert_fails('set conceallevel=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
232 call assert_fails('set conceallevel=4', 'E474:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
233 endif |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
234 call assert_fails('set helpheight=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
235 call assert_fails('set history=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
236 call assert_fails('set report=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
237 call assert_fails('set shiftwidth=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
238 call assert_fails('set sidescroll=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
239 call assert_fails('set tabstop=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
240 call assert_fails('set textwidth=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
241 call assert_fails('set timeoutlen=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
242 call assert_fails('set updatecount=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
243 call assert_fails('set updatetime=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
244 call assert_fails('set winheight=-1', 'E487:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
245 call assert_fails('set tabstop!', 'E488:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
246 call assert_fails('set xxx', 'E518:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
247 call assert_fails('set beautify?', 'E519:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
248 call assert_fails('set undolevels=x', 'E521:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
249 call assert_fails('set tabstop=', 'E521:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
250 call assert_fails('set comments=-', 'E524:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
251 call assert_fails('set comments=a', 'E525:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
252 call assert_fails('set foldmarker=x', 'E536:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
253 call assert_fails('set commentstring=x', 'E537:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
254 call assert_fails('set complete=x', 'E539:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
255 call assert_fails('set statusline=%{', 'E540:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
256 call assert_fails('set statusline=' . repeat("%p", 81), 'E541:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
257 call assert_fails('set statusline=%(', 'E542:') |
10936
a516b6c279d9
patch 8.0.0357: crash when setting 'guicursor' to weird value
Christian Brabandt <cb@256bit.org>
parents:
10932
diff
changeset
|
258 if has('cursorshape') |
a516b6c279d9
patch 8.0.0357: crash when setting 'guicursor' to weird value
Christian Brabandt <cb@256bit.org>
parents:
10932
diff
changeset
|
259 " This invalid value for 'guicursor' used to cause Vim to crash. |
a516b6c279d9
patch 8.0.0357: crash when setting 'guicursor' to weird value
Christian Brabandt <cb@256bit.org>
parents:
10932
diff
changeset
|
260 call assert_fails('set guicursor=i-ci,r-cr:h', 'E545:') |
a516b6c279d9
patch 8.0.0357: crash when setting 'guicursor' to weird value
Christian Brabandt <cb@256bit.org>
parents:
10932
diff
changeset
|
261 call assert_fails('set guicursor=i-ci', 'E545:') |
a516b6c279d9
patch 8.0.0357: crash when setting 'guicursor' to weird value
Christian Brabandt <cb@256bit.org>
parents:
10932
diff
changeset
|
262 call assert_fails('set guicursor=x', 'E545:') |
a516b6c279d9
patch 8.0.0357: crash when setting 'guicursor' to weird value
Christian Brabandt <cb@256bit.org>
parents:
10932
diff
changeset
|
263 call assert_fails('set guicursor=r-cr:horx', 'E548:') |
a516b6c279d9
patch 8.0.0357: crash when setting 'guicursor' to weird value
Christian Brabandt <cb@256bit.org>
parents:
10932
diff
changeset
|
264 call assert_fails('set guicursor=r-cr:hor0', 'E549:') |
a516b6c279d9
patch 8.0.0357: crash when setting 'guicursor' to weird value
Christian Brabandt <cb@256bit.org>
parents:
10932
diff
changeset
|
265 endif |
10823
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
266 call assert_fails('set backupext=~ patchmode=~', 'E589:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
267 call assert_fails('set winminheight=10 winheight=9', 'E591:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
268 call assert_fails('set winminwidth=10 winwidth=9', 'E592:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
269 call assert_fails("set showbreak=\x01", 'E595:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
270 call assert_fails('set t_foo=', 'E846:') |
a7da553980ee
patch 8.0.0301: not enough testing for setting options
Christian Brabandt <cb@256bit.org>
parents:
10420
diff
changeset
|
271 endfunc |
10906
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
272 |
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
273 func Test_set_ttytype() |
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
274 if !has('gui_running') && has('unix') |
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
275 " Setting 'ttytype' used to cause a double-free when exiting vim and |
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
276 " when vim is compiled with -DEXITFREE. |
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
277 set ttytype=ansi |
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
278 call assert_equal('ansi', &ttytype) |
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
279 call assert_equal(&ttytype, &term) |
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
280 set ttytype=xterm |
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
281 call assert_equal('xterm', &ttytype) |
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
282 call assert_equal(&ttytype, &term) |
11348
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
283 " "set ttytype=" gives E522 instead of E529 |
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
284 " in travis on some builds. Why? Catch both for now |
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
285 try |
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
286 set ttytype= |
13872
9d3ddfa88a56
patch 8.0.1807: function to set terminal name is too long
Christian Brabandt <cb@256bit.org>
parents:
13664
diff
changeset
|
287 call assert_report('set ttytype= did not fail') |
11348
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
288 catch /E529\|E522/ |
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
289 endtry |
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
290 |
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
291 " Some systems accept any terminal name and return dumb settings, |
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
292 " check for failure of finding the entry and for missing 'cm' entry. |
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
293 try |
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
294 set ttytype=xxx |
13872
9d3ddfa88a56
patch 8.0.1807: function to set terminal name is too long
Christian Brabandt <cb@256bit.org>
parents:
13664
diff
changeset
|
295 call assert_report('set ttytype=xxx did not fail') |
11348
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
296 catch /E522\|E437/ |
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
297 endtry |
4e5191165707
patch 8.0.0559: setting ttytype to xxx does not always fail
Christian Brabandt <cb@256bit.org>
parents:
11081
diff
changeset
|
298 |
10906
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
299 set ttytype& |
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
300 call assert_equal(&ttytype, &term) |
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
301 endif |
7fc1df5536c9
patch 8.0.0342: double free with EXITFREE and setting 'ttytype'
Christian Brabandt <cb@256bit.org>
parents:
10887
diff
changeset
|
302 endfunc |
10958
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
303 |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
304 func Test_set_all() |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
305 set tw=75 |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
306 set iskeyword=a-z,A-Z |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
307 set nosplitbelow |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
308 let out = execute('set all') |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
309 call assert_match('textwidth=75', out) |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
310 call assert_match('iskeyword=a-z,A-Z', out) |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
311 call assert_match('nosplitbelow', out) |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
312 set tw& iskeyword& splitbelow& |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
313 endfunc |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
314 |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
315 func Test_set_values() |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
316 if filereadable('opt_test.vim') |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
317 source opt_test.vim |
11081
bbdb4f0134cb
patch 8.0.0429: options test does not always test everything
Christian Brabandt <cb@256bit.org>
parents:
10962
diff
changeset
|
318 else |
bbdb4f0134cb
patch 8.0.0429: options test does not always test everything
Christian Brabandt <cb@256bit.org>
parents:
10962
diff
changeset
|
319 throw 'Skipped: opt_test.vim does not exist' |
10958
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
320 endif |
e5896de85dcf
patch 8.0.0368: not all options are tested with a range of values
Christian Brabandt <cb@256bit.org>
parents:
10938
diff
changeset
|
321 endfunc |
11380
2334a8ae9ff6
patch 8.0.0575: using freed memory when resetting 'indentexpr'
Christian Brabandt <cb@256bit.org>
parents:
11348
diff
changeset
|
322 |
2334a8ae9ff6
patch 8.0.0575: using freed memory when resetting 'indentexpr'
Christian Brabandt <cb@256bit.org>
parents:
11348
diff
changeset
|
323 func ResetIndentexpr() |
2334a8ae9ff6
patch 8.0.0575: using freed memory when resetting 'indentexpr'
Christian Brabandt <cb@256bit.org>
parents:
11348
diff
changeset
|
324 set indentexpr= |
2334a8ae9ff6
patch 8.0.0575: using freed memory when resetting 'indentexpr'
Christian Brabandt <cb@256bit.org>
parents:
11348
diff
changeset
|
325 endfunc |
2334a8ae9ff6
patch 8.0.0575: using freed memory when resetting 'indentexpr'
Christian Brabandt <cb@256bit.org>
parents:
11348
diff
changeset
|
326 |
2334a8ae9ff6
patch 8.0.0575: using freed memory when resetting 'indentexpr'
Christian Brabandt <cb@256bit.org>
parents:
11348
diff
changeset
|
327 func Test_set_indentexpr() |
2334a8ae9ff6
patch 8.0.0575: using freed memory when resetting 'indentexpr'
Christian Brabandt <cb@256bit.org>
parents:
11348
diff
changeset
|
328 " this was causing usage of freed memory |
2334a8ae9ff6
patch 8.0.0575: using freed memory when resetting 'indentexpr'
Christian Brabandt <cb@256bit.org>
parents:
11348
diff
changeset
|
329 set indentexpr=ResetIndentexpr() |
2334a8ae9ff6
patch 8.0.0575: using freed memory when resetting 'indentexpr'
Christian Brabandt <cb@256bit.org>
parents:
11348
diff
changeset
|
330 new |
2334a8ae9ff6
patch 8.0.0575: using freed memory when resetting 'indentexpr'
Christian Brabandt <cb@256bit.org>
parents:
11348
diff
changeset
|
331 call feedkeys("i\<c-f>", 'x') |
2334a8ae9ff6
patch 8.0.0575: using freed memory when resetting 'indentexpr'
Christian Brabandt <cb@256bit.org>
parents:
11348
diff
changeset
|
332 call assert_equal('', &indentexpr) |
2334a8ae9ff6
patch 8.0.0575: using freed memory when resetting 'indentexpr'
Christian Brabandt <cb@256bit.org>
parents:
11348
diff
changeset
|
333 bwipe! |
2334a8ae9ff6
patch 8.0.0575: using freed memory when resetting 'indentexpr'
Christian Brabandt <cb@256bit.org>
parents:
11348
diff
changeset
|
334 endfunc |
13664
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
335 |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
336 func Test_backupskip() |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
337 if has("mac") |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
338 call assert_match('/private/tmp/\*', &bsk) |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
339 elseif has("unix") |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
340 call assert_match('/tmp/\*', &bsk) |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
341 endif |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
342 |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
343 let bskvalue = substitute(&bsk, '\\', '/', 'g') |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
344 for var in ['$TEMPDIR', '$TMP', '$TEMP'] |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
345 if exists(var) |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
346 let varvalue = substitute(expand(var), '\\', '/', 'g') |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
347 call assert_match(varvalue . '.\*', bskvalue) |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
348 endif |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
349 endfor |
f64c5e636c9f
patch 8.0.1704: 'backupskip' default doesn't work for Mac
Christian Brabandt <cb@256bit.org>
parents:
11380
diff
changeset
|
350 endfunc |
13931
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
351 |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
352 func Test_copy_winopt() |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
353 set hidden |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
354 |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
355 " Test copy option from current buffer in window |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
356 split |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
357 enew |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
358 setlocal numberwidth=5 |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
359 wincmd w |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
360 call assert_equal(4,&numberwidth) |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
361 bnext |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
362 call assert_equal(5,&numberwidth) |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
363 bw! |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
364 call assert_equal(4,&numberwidth) |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
365 |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
366 " Test copy value from window that used to be display the buffer |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
367 split |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
368 enew |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
369 setlocal numberwidth=6 |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
370 bnext |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
371 wincmd w |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
372 call assert_equal(4,&numberwidth) |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
373 bnext |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
374 call assert_equal(6,&numberwidth) |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
375 bw! |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
376 |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
377 " Test that if buffer is current, don't use the stale cached value |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
378 " from the last time the buffer was displayed. |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
379 split |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
380 enew |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
381 setlocal numberwidth=7 |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
382 bnext |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
383 bnext |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
384 setlocal numberwidth=8 |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
385 wincmd w |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
386 call assert_equal(4,&numberwidth) |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
387 bnext |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
388 call assert_equal(8,&numberwidth) |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
389 bw! |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
390 |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
391 " Test value is not copied if window already has seen the buffer |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
392 enew |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
393 split |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
394 setlocal numberwidth=9 |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
395 bnext |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
396 setlocal numberwidth=10 |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
397 wincmd w |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
398 call assert_equal(4,&numberwidth) |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
399 bnext |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
400 call assert_equal(4,&numberwidth) |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
401 bw! |
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
402 endfunc |