Mercurial > vim
annotate src/testdir/test_options.vim @ 14642:96858d612aff v8.1.0334
patch 8.1.0334: 'autowrite' takes effect when buffer is not to be written
commit https://github.com/vim/vim/commit/8c9e7b00f6566dc41e794ef11c93d93b034c7134
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Aug 30 13:07:17 2018 +0200
patch 8.1.0334: 'autowrite' takes effect when buffer is not to be written
Problem: 'autowrite' takes effect when buffer is not to be written.
Solution: Don't write buffers that are not supposed to be written. (Even Q
Jones, closes #3391) Add tests for 'autowrite'.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 30 Aug 2018 13:15:06 +0200 |
parents | 56ceaa0ad239 |
children | cf4d6489c9eb |
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') |
14517
a28fb81c9ecf
patch 8.1.0272: options test fails if temp var ends in slash
Christian Brabandt <cb@256bit.org>
parents:
14185
diff
changeset
|
347 call assert_match(varvalue . '/\=\*', bskvalue) |
13664
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() |
14617
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
353 set hidden |
13931
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
354 |
14617
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
355 " Test copy option from current buffer in window |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
356 split |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
357 enew |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
358 setlocal numberwidth=5 |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
359 wincmd w |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
360 call assert_equal(4,&numberwidth) |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
361 bnext |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
362 call assert_equal(5,&numberwidth) |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
363 bw! |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
364 call assert_equal(4,&numberwidth) |
13931
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
365 |
14617
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
366 " Test copy value from window that used to be display the buffer |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
367 split |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
368 enew |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
369 setlocal numberwidth=6 |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
370 bnext |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
371 wincmd w |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
372 call assert_equal(4,&numberwidth) |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
373 bnext |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
374 call assert_equal(6,&numberwidth) |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
375 bw! |
13931
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
376 |
14617
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
377 " Test that if buffer is current, don't use the stale cached value |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
378 " from the last time the buffer was displayed. |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
379 split |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
380 enew |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
381 setlocal numberwidth=7 |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
382 bnext |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
383 bnext |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
384 setlocal numberwidth=8 |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
385 wincmd w |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
386 call assert_equal(4,&numberwidth) |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
387 bnext |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
388 call assert_equal(8,&numberwidth) |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
389 bw! |
13931
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
390 |
14617
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
391 " Test value is not copied if window already has seen the buffer |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
392 enew |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
393 split |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
394 setlocal numberwidth=9 |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
395 bnext |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
396 setlocal numberwidth=10 |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
397 wincmd w |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
398 call assert_equal(4,&numberwidth) |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
399 bnext |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
400 call assert_equal(4,&numberwidth) |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
401 bw! |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
402 |
56ceaa0ad239
patch 8.1.0322: Test_copy_winopt() does not restore 'hidden'
Christian Brabandt <cb@256bit.org>
parents:
14593
diff
changeset
|
403 set hidden& |
13931
fc03fabbedc5
patch 8.0.1836: buffer-local window options may not be recent
Christian Brabandt <cb@256bit.org>
parents:
13872
diff
changeset
|
404 endfunc |
14185
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
405 |
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
406 func Test_shortmess_F() |
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
407 new |
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
408 call assert_match('\[No Name\]', execute('file')) |
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
409 set shortmess+=F |
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
410 call assert_match('\[No Name\]', execute('file')) |
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
411 call assert_match('^\s*$', execute('file foo')) |
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
412 call assert_match('foo', execute('file')) |
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
413 set shortmess-=F |
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
414 call assert_match('bar', execute('file bar')) |
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
415 call assert_match('bar', execute('file')) |
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
416 set shortmess& |
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
417 bwipe |
20468fb49f9b
patch 8.1.0110: file name not displayed with ":file"
Christian Brabandt <cb@256bit.org>
parents:
13931
diff
changeset
|
418 endfunc |
14593
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
419 |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
420 func Test_shortmess_F2() |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
421 e file1 |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
422 e file2 |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
423 call assert_match('file1', execute('bn', '')) |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
424 call assert_match('file2', execute('bn', '')) |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
425 set shortmess+=F |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
426 call assert_true(empty(execute('bn', ''))) |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
427 call assert_true(empty(execute('bn', ''))) |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
428 set hidden |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
429 call assert_true(empty(execute('bn', ''))) |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
430 call assert_true(empty(execute('bn', ''))) |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
431 set nohidden |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
432 call assert_true(empty(execute('bn', ''))) |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
433 call assert_true(empty(execute('bn', ''))) |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
434 set shortmess& |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
435 call assert_match('file1', execute('bn', '')) |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
436 call assert_match('file2', execute('bn', '')) |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
437 bwipe |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
438 bwipe |
b6b2f7d69c7f
patch 8.1.0310: file info msg not always suppressed with 'F' in 'shortmess'
Christian Brabandt <cb@256bit.org>
parents:
14517
diff
changeset
|
439 endfunc |