Mercurial > vim
annotate src/testdir/test_gui.vim @ 25302:4d3c68196d05 v8.2.3188
patch 8.2.3188: Vim9: argument types are not checked at compile time
Commit: https://github.com/vim/vim/commit/83494b4ac61898f687d6ef9dce4bad5802fb8e51
Author: Yegappan Lakshmanan <yegappan@yahoo.com>
Date: Tue Jul 20 17:51:51 2021 +0200
patch 8.2.3188: Vim9: argument types are not checked at compile time
Problem: Vim9: argument types are not checked at compile time.
Solution: Add several more type checks, also at runtime. (Yegappan
Lakshmanan, closes #8587)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 20 Jul 2021 18:00:06 +0200 |
parents | c39a64bc5ca2 |
children | 1cde96e768e4 |
rev | line source |
---|---|
9756
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
1 " Tests specifically for the GUI |
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
2 |
12106
d2c20ec4b95a
patch 8.0.0933: terminal test tries to start GUI when it's not possible
Christian Brabandt <cb@256bit.org>
parents:
11183
diff
changeset
|
3 source shared.vim |
17657
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17172
diff
changeset
|
4 source check.vim |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17172
diff
changeset
|
5 CheckCanRunGui |
9756
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
6 |
10944
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
7 source setup_gui.vim |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
8 |
10944
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
9 func Setup() |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
10 call GUISetUpCommon() |
9830
6049c1f01391
commit https://github.com/vim/vim/commit/50fa8dd00c241fa0786fe92ecc02fee4e5d28e06
Christian Brabandt <cb@256bit.org>
parents:
9760
diff
changeset
|
11 endfunc |
6049c1f01391
commit https://github.com/vim/vim/commit/50fa8dd00c241fa0786fe92ecc02fee4e5d28e06
Christian Brabandt <cb@256bit.org>
parents:
9760
diff
changeset
|
12 |
6049c1f01391
commit https://github.com/vim/vim/commit/50fa8dd00c241fa0786fe92ecc02fee4e5d28e06
Christian Brabandt <cb@256bit.org>
parents:
9760
diff
changeset
|
13 func TearDown() |
10944
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
14 call GUITearDownCommon() |
9756
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
15 endfunc |
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
16 |
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
17 " Test for resetting "secure" flag after GUI has started. |
13351
33a2277b8d4d
patch 8.0.1549: various small problems in test files
Christian Brabandt <cb@256bit.org>
parents:
12106
diff
changeset
|
18 " Must be run first, since it starts the GUI on Unix. |
9756
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
19 func Test_1_set_secure() |
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
20 set exrc secure |
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
21 gui -f |
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
22 call assert_equal(1, has('gui_running')) |
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
23 endfunc |
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
24 |
11050
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
25 " As for non-GUI, a balloon_show() test was already added with patch 8.0.0401 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
26 func Test_balloon_show() |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
27 CheckFeature balloon_eval |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
28 " This won't do anything but must not crash either. |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
29 call balloon_show('hi!') |
11050
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
30 endfunc |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
31 |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
32 func Test_colorscheme() |
19997
3d1de9093c01
patch 8.2.0554: the GUI doesn't set t_Co
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
33 call assert_equal('16777216', &t_Co) |
3d1de9093c01
patch 8.2.0554: the GUI doesn't set t_Co
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
34 |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
35 let colorscheme_saved = exists('g:colors_name') ? g:colors_name : 'default' |
13810
cad480bac9e1
patch 8.0.1777: cannot cleanup before loading another colorscheme
Christian Brabandt <cb@256bit.org>
parents:
13351
diff
changeset
|
36 let g:color_count = 0 |
cad480bac9e1
patch 8.0.1777: cannot cleanup before loading another colorscheme
Christian Brabandt <cb@256bit.org>
parents:
13351
diff
changeset
|
37 augroup TestColors |
cad480bac9e1
patch 8.0.1777: cannot cleanup before loading another colorscheme
Christian Brabandt <cb@256bit.org>
parents:
13351
diff
changeset
|
38 au! |
cad480bac9e1
patch 8.0.1777: cannot cleanup before loading another colorscheme
Christian Brabandt <cb@256bit.org>
parents:
13351
diff
changeset
|
39 au ColorScheme * let g:color_count += 1| let g:after_colors = g:color_count |
cad480bac9e1
patch 8.0.1777: cannot cleanup before loading another colorscheme
Christian Brabandt <cb@256bit.org>
parents:
13351
diff
changeset
|
40 au ColorSchemePre * let g:color_count += 1 |let g:before_colors = g:color_count |
cad480bac9e1
patch 8.0.1777: cannot cleanup before loading another colorscheme
Christian Brabandt <cb@256bit.org>
parents:
13351
diff
changeset
|
41 augroup END |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
42 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
43 colorscheme torte |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
44 redraw! |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
45 call assert_equal('dark', &background) |
13810
cad480bac9e1
patch 8.0.1777: cannot cleanup before loading another colorscheme
Christian Brabandt <cb@256bit.org>
parents:
13351
diff
changeset
|
46 call assert_equal(1, g:before_colors) |
cad480bac9e1
patch 8.0.1777: cannot cleanup before loading another colorscheme
Christian Brabandt <cb@256bit.org>
parents:
13351
diff
changeset
|
47 call assert_equal(2, g:after_colors) |
15394
f20d90aeecaa
patch 8.1.0705: :colorscheme isn't tested enough
Bram Moolenaar <Bram@vim.org>
parents:
14756
diff
changeset
|
48 call assert_equal("\ntorte", execute('colorscheme')) |
f20d90aeecaa
patch 8.1.0705: :colorscheme isn't tested enough
Bram Moolenaar <Bram@vim.org>
parents:
14756
diff
changeset
|
49 |
f20d90aeecaa
patch 8.1.0705: :colorscheme isn't tested enough
Bram Moolenaar <Bram@vim.org>
parents:
14756
diff
changeset
|
50 let a = substitute(execute('hi Search'), "\n\\s\\+", ' ', 'g') |
f20d90aeecaa
patch 8.1.0705: :colorscheme isn't tested enough
Bram Moolenaar <Bram@vim.org>
parents:
14756
diff
changeset
|
51 call assert_match("\nSearch xxx term=reverse ctermfg=0 ctermbg=12 gui=bold guifg=Black guibg=Red", a) |
f20d90aeecaa
patch 8.1.0705: :colorscheme isn't tested enough
Bram Moolenaar <Bram@vim.org>
parents:
14756
diff
changeset
|
52 |
f20d90aeecaa
patch 8.1.0705: :colorscheme isn't tested enough
Bram Moolenaar <Bram@vim.org>
parents:
14756
diff
changeset
|
53 call assert_fails('colorscheme does_not_exist', 'E185:') |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
54 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
55 exec 'colorscheme' colorscheme_saved |
13810
cad480bac9e1
patch 8.0.1777: cannot cleanup before loading another colorscheme
Christian Brabandt <cb@256bit.org>
parents:
13351
diff
changeset
|
56 augroup TestColors |
cad480bac9e1
patch 8.0.1777: cannot cleanup before loading another colorscheme
Christian Brabandt <cb@256bit.org>
parents:
13351
diff
changeset
|
57 au! |
cad480bac9e1
patch 8.0.1777: cannot cleanup before loading another colorscheme
Christian Brabandt <cb@256bit.org>
parents:
13351
diff
changeset
|
58 augroup END |
cad480bac9e1
patch 8.0.1777: cannot cleanup before loading another colorscheme
Christian Brabandt <cb@256bit.org>
parents:
13351
diff
changeset
|
59 unlet g:color_count g:after_colors g:before_colors |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
60 redraw! |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
61 endfunc |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
62 |
10847
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
63 func Test_getfontname_with_arg() |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
64 let skipped = '' |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
65 |
10944
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
66 if !g:x11_based_gui |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
67 let skipped = g:not_implemented |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
68 elseif has('gui_athena') || has('gui_motif') |
10847
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
69 " Invalid font name. The result should be an empty string. |
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
70 call assert_equal('', getfontname('notexist')) |
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
71 |
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
72 " Valid font name. This is usually the real name of 7x13 by default. |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
73 let fname = '-Misc-Fixed-Medium-R-Normal--13-120-75-75-C-70-ISO8859-1' |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
74 call assert_match(fname, getfontname(fname)) |
10847
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
75 |
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
76 elseif has('gui_gtk2') || has('gui_gnome') || has('gui_gtk3') |
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
77 " Invalid font name. The result should be the name plus the default size. |
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
78 call assert_equal('notexist 10', getfontname('notexist')) |
19783
546bdeef35f1
patch 8.2.0448: various functions not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
18767
diff
changeset
|
79 call assert_equal('', getfontname('*')) |
10847
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
80 |
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
81 " Valid font name. This is usually the real name of Monospace by default. |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
82 let fname = 'Bitstream Vera Sans Mono 12' |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
83 call assert_equal(fname, getfontname(fname)) |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
84 endif |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
85 |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
86 if !empty(skipped) |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
87 throw skipped |
10847
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
88 endif |
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
89 endfunc |
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
90 |
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
91 func Test_getfontname_without_arg() |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
92 let skipped = '' |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
93 |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
94 let fname = getfontname() |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
95 |
10944
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
96 if !g:x11_based_gui |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
97 let skipped = g:not_implemented |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
98 elseif has('gui_kde') |
10847
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
99 " 'expected' is the value specified by SetUp() above. |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
100 call assert_equal('Courier 10 Pitch/8/-1/5/50/0/0/0/0/0', fname) |
10847
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
101 elseif has('gui_athena') || has('gui_motif') |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
102 " 'expected' is DFLT_FONT of gui_x11.c or its real name. |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
103 let pat = '\(7x13\)\|\(\c-Misc-Fixed-Medium-R-Normal--13-120-75-75-C-70-ISO8859-1\)' |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
104 call assert_match(pat, fname) |
10847
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
105 elseif has('gui_gtk2') || has('gui_gnome') || has('gui_gtk3') |
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
106 " 'expected' is DEFAULT_FONT of gui_gtk_x11.c. |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
107 call assert_equal('Monospace 10', fname) |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
108 endif |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
109 |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
110 if !empty(skipped) |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
111 throw skipped |
10847
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
112 endif |
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
113 endfunc |
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
114 |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
115 func Test_getwinpos() |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
116 call assert_match('Window position: X \d\+, Y \d\+', execute('winpos')) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
117 call assert_true(getwinposx() >= 0) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
118 call assert_true(getwinposy() >= 0) |
13940
70e36e1ca442
patch 8.0.1840: getwinpos() is not tested
Christian Brabandt <cb@256bit.org>
parents:
13843
diff
changeset
|
119 call assert_equal([getwinposx(), getwinposy()], getwinpos()) |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
120 endfunc |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
121 |
10972
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
122 func Test_quoteplus() |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
123 let skipped = '' |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
124 |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
125 if !g:x11_based_gui |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
126 let skipped = g:not_supported . 'quoteplus' |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
127 else |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
128 let quoteplus_saved = @+ |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
129 |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
130 let test_call = 'Can you hear me?' |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
131 let test_response = 'Yes, I can.' |
17698
131f1d8c5860
patch 8.1.1846: inconsistently using GetVimCommand() and v:progpath
Bram Moolenaar <Bram@vim.org>
parents:
17657
diff
changeset
|
132 let vim_exe = GetVimCommand() |
10972
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
133 let testee = 'VIMRUNTIME=' . $VIMRUNTIME . '; export VIMRUNTIME;' |
17698
131f1d8c5860
patch 8.1.1846: inconsistently using GetVimCommand() and v:progpath
Bram Moolenaar <Bram@vim.org>
parents:
17657
diff
changeset
|
134 \ . vim_exe . ' --noplugin --not-a-term -c ''%s''' |
11012
ae2de10e8398
patch 8.0.0395: testing the + register fails with Motif
Christian Brabandt <cb@256bit.org>
parents:
11006
diff
changeset
|
135 " Ignore the "failed to create input context" error. |
11028
4df1647531a6
patch 8.0.0403: GUI tests may fail
Christian Brabandt <cb@256bit.org>
parents:
11012
diff
changeset
|
136 let cmd = 'call test_ignore_error("E285") | ' |
4df1647531a6
patch 8.0.0403: GUI tests may fail
Christian Brabandt <cb@256bit.org>
parents:
11012
diff
changeset
|
137 \ . 'gui -f | ' |
4df1647531a6
patch 8.0.0403: GUI tests may fail
Christian Brabandt <cb@256bit.org>
parents:
11012
diff
changeset
|
138 \ . 'call feedkeys("' |
10972
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
139 \ . '\"+p' |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
140 \ . ':s/' . test_call . '/' . test_response . '/\<CR>' |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
141 \ . '\"+yis' |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
142 \ . ':q!\<CR>", "tx")' |
11028
4df1647531a6
patch 8.0.0403: GUI tests may fail
Christian Brabandt <cb@256bit.org>
parents:
11012
diff
changeset
|
143 let run_vimtest = printf(testee, cmd) |
10972
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
144 |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
145 " Set the quoteplus register to test_call, and another gvim will launched. |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
146 " Then, it first tries to paste the content of its own quotedplus register |
13940
70e36e1ca442
patch 8.0.1840: getwinpos() is not tested
Christian Brabandt <cb@256bit.org>
parents:
13843
diff
changeset
|
147 " onto it. Second, it tries to substitute test_response for the pasted |
10972
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
148 " sentence. If the sentence is identical to test_call, the substitution |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
149 " should succeed. Third, it tries to yank the result of the substitution |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
150 " to its own quoteplus register, and last it quits. When system() |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
151 " returns, the content of the quoteplus register should be identical to |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
152 " test_response if those quoteplus registers are synchronized properly |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
153 " with/through the X11 clipboard. |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
154 let @+ = test_call |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
155 call system(run_vimtest) |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
156 call assert_equal(test_response, @+) |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
157 |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
158 let @+ = quoteplus_saved |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
159 endif |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
160 |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
161 if !empty(skipped) |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
162 throw skipped |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
163 endif |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
164 endfunc |
488cda29455b
patch 8.0.0375: the "+ register is not tested
Christian Brabandt <cb@256bit.org>
parents:
10944
diff
changeset
|
165 |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
166 func Test_set_background() |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
167 let background_saved = &background |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
168 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
169 set background& |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
170 call assert_equal('light', &background) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
171 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
172 set background=dark |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
173 call assert_equal('dark', &background) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
174 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
175 let &background = background_saved |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
176 endfunc |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
177 |
11050
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
178 func Test_set_balloondelay() |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
179 CheckOption balloondelay |
11050
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
180 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
181 let balloondelay_saved = &balloondelay |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
182 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
183 " Check if the default value is identical to that described in the manual. |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
184 set balloondelay& |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
185 call assert_equal(600, &balloondelay) |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
186 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
187 " Edge cases |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
188 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
189 " XXX This fact should be hidden so that people won't be tempted to write |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
190 " plugin/TimeMachine.vim. TODO Add reasonable range checks to the source |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
191 " code. |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
192 set balloondelay=-1 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
193 call assert_equal(-1, &balloondelay) |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
194 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
195 " Though it's possible to interpret the zero delay to be 'as soon as |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
196 " possible' or even 'indefinite', its actual meaning depends on the GUI |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
197 " toolkit in use after all. |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
198 set balloondelay=0 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
199 call assert_equal(0, &balloondelay) |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
200 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
201 set balloondelay=1 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
202 call assert_equal(1, &balloondelay) |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
203 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
204 " Since p_bdelay is of type long currently, the upper bound can be |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
205 " impractically huge and machine-dependent. Practically, it's sufficient |
11052
975f54a391ec
patch 8.0.0415: balloon test fails on MS-Windows
Christian Brabandt <cb@256bit.org>
parents:
11050
diff
changeset
|
206 " to check if balloondelay works with 0x7fffffff (32 bits) for now. |
975f54a391ec
patch 8.0.0415: balloon test fails on MS-Windows
Christian Brabandt <cb@256bit.org>
parents:
11050
diff
changeset
|
207 set balloondelay=2147483647 |
975f54a391ec
patch 8.0.0415: balloon test fails on MS-Windows
Christian Brabandt <cb@256bit.org>
parents:
11050
diff
changeset
|
208 call assert_equal(2147483647, &balloondelay) |
11050
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
209 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
210 let &balloondelay = balloondelay_saved |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
211 endfunc |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
212 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
213 func Test_set_ballooneval() |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
214 CheckOption ballooneval |
11050
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
215 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
216 let ballooneval_saved = &ballooneval |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
217 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
218 set ballooneval& |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
219 call assert_equal(0, &ballooneval) |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
220 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
221 set ballooneval |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
222 call assert_notequal(0, &ballooneval) |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
223 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
224 set noballooneval |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
225 call assert_equal(0, &ballooneval) |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
226 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
227 let &ballooneval = ballooneval_saved |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
228 endfunc |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
229 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
230 func Test_set_balloonexpr() |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
231 CheckOption balloonexpr |
11050
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
232 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
233 let balloonexpr_saved = &balloonexpr |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
234 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
235 " Default value |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
236 set balloonexpr& |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
237 call assert_equal('', &balloonexpr) |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
238 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
239 " User-defined function |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
240 new |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
241 func MyBalloonExpr() |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
242 return 'Cursor is at line ' . v:beval_lnum . |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
243 \', column ' . v:beval_col . |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
244 \ ' of file ' . bufname(v:beval_bufnr) . |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
245 \ ' on word "' . v:beval_text . '"' . |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
246 \ ' in window ' . v:beval_winid . ' (#' . v:beval_winnr . ')' |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
247 endfunc |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
248 setl balloonexpr=MyBalloonExpr() |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
249 setl ballooneval |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
250 call assert_equal('MyBalloonExpr()', &balloonexpr) |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
251 " TODO Read non-empty text, place the pointer at a character of a word, |
13940
70e36e1ca442
patch 8.0.1840: getwinpos() is not tested
Christian Brabandt <cb@256bit.org>
parents:
13843
diff
changeset
|
252 " and check if the content of the balloon is the same as what is expected. |
11050
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
253 " Also, check if textlock works as expected. |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
254 setl balloonexpr& |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
255 call assert_equal('', &balloonexpr) |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
256 delfunc MyBalloonExpr |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
257 bwipe! |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
258 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
259 " Multiline support |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
260 if has('balloon_multiline') |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
261 " Multiline balloon using NL |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
262 new |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
263 func MyBalloonFuncForMultilineUsingNL() |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
264 return "Multiline\nSuppported\nBalloon\nusing NL" |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
265 endfunc |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
266 setl balloonexpr=MyBalloonFuncForMultilineUsingNL() |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
267 setl ballooneval |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
268 call assert_equal('MyBalloonFuncForMultilineUsingNL()', &balloonexpr) |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
269 " TODO Read non-empty text, place the pointer at a character of a word, |
13940
70e36e1ca442
patch 8.0.1840: getwinpos() is not tested
Christian Brabandt <cb@256bit.org>
parents:
13843
diff
changeset
|
270 " and check if the content of the balloon is the same as what is |
11050
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
271 " expected. Also, check if textlock works as expected. |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
272 setl balloonexpr& |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
273 delfunc MyBalloonFuncForMultilineUsingNL |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
274 bwipe! |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
275 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
276 " Multiline balloon using List |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
277 new |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
278 func MyBalloonFuncForMultilineUsingList() |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
279 return [ 'Multiline', 'Suppported', 'Balloon', 'using List' ] |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
280 endfunc |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
281 setl balloonexpr=MyBalloonFuncForMultilineUsingList() |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
282 setl ballooneval |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
283 call assert_equal('MyBalloonFuncForMultilineUsingList()', &balloonexpr) |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
284 " TODO Read non-empty text, place the pointer at a character of a word, |
13940
70e36e1ca442
patch 8.0.1840: getwinpos() is not tested
Christian Brabandt <cb@256bit.org>
parents:
13843
diff
changeset
|
285 " and check if the content of the balloon is the same as what is |
11050
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
286 " expected. Also, check if textlock works as expected. |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
287 setl balloonexpr& |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
288 delfunc MyBalloonFuncForMultilineUsingList |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
289 bwipe! |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
290 endif |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
291 |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
292 let &balloonexpr = balloonexpr_saved |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
293 endfunc |
622ed5a4925f
patch 8.0.0414: balloon eval is not tested
Christian Brabandt <cb@256bit.org>
parents:
11028
diff
changeset
|
294 |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
295 " Invalid arguments are tested with test_options in conjunction with segfaults |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
296 " caused by them (Patch 8.0.0357, 24922ec233). |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
297 func Test_set_guicursor() |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
298 let guicursor_saved = &guicursor |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
299 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
300 let default = [ |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
301 \ "n-v-c:block-Cursor/lCursor", |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
302 \ "ve:ver35-Cursor", |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
303 \ "o:hor50-Cursor", |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
304 \ "i-ci:ver25-Cursor/lCursor", |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
305 \ "r-cr:hor20-Cursor/lCursor", |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
306 \ "sm:block-Cursor-blinkwait175-blinkoff150-blinkon175" |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
307 \ ] |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
308 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
309 " Default Value |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
310 set guicursor& |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
311 call assert_equal(join(default, ','), &guicursor) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
312 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
313 " Argument List Example 1 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
314 let opt_list = copy(default) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
315 let opt_list[0] = "n-c-v:block-nCursor" |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
316 exec "set guicursor=" . join(opt_list, ',') |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
317 call assert_equal(join(opt_list, ','), &guicursor) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
318 unlet opt_list |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
319 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
320 " Argument List Example 2 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
321 let opt_list = copy(default) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
322 let opt_list[3] = "i-ci:ver30-iCursor-blinkwait300-blinkon200-blinkoff150" |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
323 exec "set guicursor=" . join(opt_list, ',') |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
324 call assert_equal(join(opt_list, ','), &guicursor) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
325 unlet opt_list |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
326 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
327 " 'a' Mode |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
328 set guicursor& |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
329 let &guicursor .= ',a:blinkon0' |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
330 call assert_equal(join(default, ',') . ",a:blinkon0", &guicursor) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
331 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
332 let &guicursor = guicursor_saved |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
333 endfunc |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
334 |
10855
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
335 func Test_set_guifont() |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
336 let skipped = '' |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
337 |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
338 let guifont_saved = &guifont |
10855
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
339 if has('xfontset') |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
340 " Prevent 'guifontset' from canceling 'guifont'. |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
341 let guifontset_saved = &guifontset |
10855
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
342 set guifontset= |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
343 endif |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
344 |
10944
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
345 if !g:x11_based_gui |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
346 let skipped = g:not_implemented |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
347 elseif has('gui_athena') || has('gui_motif') |
10855
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
348 " Non-empty font list with invalid font names. |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
349 " |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
350 " This test is twofold: (1) It checks if the command fails as expected |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
351 " when there are no loadable fonts found in the list. (2) It checks if |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
352 " 'guifont' remains the same after the command loads none of the fonts |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
353 " listed. |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
354 let flist = &guifont |
10855
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
355 call assert_fails('set guifont=-notexist1-*,-notexist2-*') |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
356 call assert_equal(flist, &guifont) |
10855
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
357 |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
358 " Non-empty font list with a valid font name. Should pick up the first |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
359 " valid font. |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
360 set guifont=-notexist1-*,fixed,-notexist2-* |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
361 let pat = '\(fixed\)\|\(\c-Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO8859-1\)' |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
362 call assert_match(pat, getfontname()) |
10855
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
363 |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
364 " Empty list. Should fallback to the built-in default. |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
365 set guifont= |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
366 let pat = '\(7x13\)\|\(\c-Misc-Fixed-Medium-R-Normal--13-120-75-75-C-70-ISO8859-1\)' |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
367 call assert_match(pat, getfontname()) |
10855
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
368 |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
369 elseif has('gui_gtk2') || has('gui_gnome') || has('gui_gtk3') |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
370 " For GTK, what we refer to as 'font names' in our manual are actually |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
371 " 'initial font patterns'. A valid font which matches the 'canonical font |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
372 " pattern' constructed from a given 'initial pattern' is to be looked up |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
373 " and loaded. That explains why the GTK GUIs appear to accept 'invalid |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
374 " font names'. |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
375 " |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
376 " Non-empty list. Should always pick up the first element, no matter how |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
377 " strange it is, as explained above. |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
378 set guifont=(´・ω・`)\ 12,Courier\ 12 |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
379 call assert_equal('(´・ω・`) 12', getfontname()) |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
380 |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
381 " Empty list. Should fallback to the built-in default. |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
382 set guifont= |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
383 call assert_equal('Monospace 10', getfontname()) |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
384 endif |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
385 |
19932
2c4d9ca33769
patch 8.2.0522: several errors are not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
386 if has('win32') |
2c4d9ca33769
patch 8.2.0522: several errors are not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
387 " Invalid font names are accepted in GTK GUI |
2c4d9ca33769
patch 8.2.0522: several errors are not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
388 call assert_fails('set guifont=xa1bc23d7f', 'E596:') |
23140
ecc6bcc644b7
patch 8.2.2116: MS-Windows GUI: test for 'guifont' is incomplete
Bram Moolenaar <Bram@vim.org>
parents:
23134
diff
changeset
|
389 endif |
23134
26824776adf6
patch 8.2.2113: MS-Windows GUI: crash after using ":set guifont=" four times
Bram Moolenaar <Bram@vim.org>
parents:
22439
diff
changeset
|
390 |
24035
ee5b6208f725
patch 8.2.2559: MS-Windows: guifont test fails on Windows XP
Bram Moolenaar <Bram@vim.org>
parents:
23140
diff
changeset
|
391 " This only works if 'renderoptions' exists and does not work for Windows XP |
24982
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
392 " and older. |
24035
ee5b6208f725
patch 8.2.2559: MS-Windows: guifont test fails on Windows XP
Bram Moolenaar <Bram@vim.org>
parents:
23140
diff
changeset
|
393 if exists('+renderoptions') && windowsversion() !~ '^[345]\.' |
23134
26824776adf6
patch 8.2.2113: MS-Windows GUI: crash after using ":set guifont=" four times
Bram Moolenaar <Bram@vim.org>
parents:
22439
diff
changeset
|
394 " doing this four times used to cause a crash |
23140
ecc6bcc644b7
patch 8.2.2116: MS-Windows GUI: test for 'guifont' is incomplete
Bram Moolenaar <Bram@vim.org>
parents:
23134
diff
changeset
|
395 set renderoptions=type:directx |
ecc6bcc644b7
patch 8.2.2116: MS-Windows GUI: test for 'guifont' is incomplete
Bram Moolenaar <Bram@vim.org>
parents:
23134
diff
changeset
|
396 for i in range(5) |
ecc6bcc644b7
patch 8.2.2116: MS-Windows GUI: test for 'guifont' is incomplete
Bram Moolenaar <Bram@vim.org>
parents:
23134
diff
changeset
|
397 set guifont= |
ecc6bcc644b7
patch 8.2.2116: MS-Windows GUI: test for 'guifont' is incomplete
Bram Moolenaar <Bram@vim.org>
parents:
23134
diff
changeset
|
398 endfor |
ecc6bcc644b7
patch 8.2.2116: MS-Windows GUI: test for 'guifont' is incomplete
Bram Moolenaar <Bram@vim.org>
parents:
23134
diff
changeset
|
399 set renderoptions= |
ecc6bcc644b7
patch 8.2.2116: MS-Windows GUI: test for 'guifont' is incomplete
Bram Moolenaar <Bram@vim.org>
parents:
23134
diff
changeset
|
400 for i in range(5) |
ecc6bcc644b7
patch 8.2.2116: MS-Windows GUI: test for 'guifont' is incomplete
Bram Moolenaar <Bram@vim.org>
parents:
23134
diff
changeset
|
401 set guifont= |
ecc6bcc644b7
patch 8.2.2116: MS-Windows GUI: test for 'guifont' is incomplete
Bram Moolenaar <Bram@vim.org>
parents:
23134
diff
changeset
|
402 endfor |
19932
2c4d9ca33769
patch 8.2.0522: several errors are not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
403 endif |
2c4d9ca33769
patch 8.2.0522: several errors are not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
404 |
10855
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
405 if has('xfontset') |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
406 let &guifontset = guifontset_saved |
10855
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
407 endif |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
408 let &guifont = guifont_saved |
10855
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
409 |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
410 if !empty(skipped) |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
411 throw skipped |
10855
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
412 endif |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
413 endfunc |
0beffabed338
patch 8.0.0317: no test for setting 'guifont'
Christian Brabandt <cb@256bit.org>
parents:
10847
diff
changeset
|
414 |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
415 func Test_set_guifontset() |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
416 CheckFeature xfontset |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
417 let skipped = '' |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
418 |
19932
2c4d9ca33769
patch 8.2.0522: several errors are not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
419 call assert_fails('set guifontset=*', 'E597:') |
2c4d9ca33769
patch 8.2.0522: several errors are not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
420 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
421 let ctype_saved = v:ctype |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
422 |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
423 " First, since XCreateFontSet(3) is very sensitive to locale, fonts must |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
424 " be chosen meticulously. |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
425 let font_head = '-misc-fixed-medium-r-normal--14' |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
426 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
427 let font_aw70 = font_head . '-130-75-75-c-70' |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
428 let font_aw140 = font_head . '-130-75-75-c-140' |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
429 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
430 let font_jisx0201 = font_aw70 . '-jisx0201.1976-0' |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
431 let font_jisx0208 = font_aw140 . '-jisx0208.1983-0' |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
432 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
433 let full_XLFDs = join([ font_jisx0208, font_jisx0201 ], ',') |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
434 let short_XLFDs = join([ font_aw140, font_aw70 ], ',') |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
435 let singleton = font_head . '-*' |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
436 let aliases = 'k14,r14' |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
437 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
438 " Second, among 'locales', look up such a locale that gets 'set |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
439 " guifontset=' to work successfully with every fontset specified with |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
440 " 'fontsets'. |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
441 let locales = [ 'ja_JP.UTF-8', 'ja_JP.eucJP', 'ja_JP.SJIS' ] |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
442 let fontsets = [ full_XLFDs, short_XLFDs, singleton, aliases ] |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
443 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
444 let feasible = 0 |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
445 for locale in locales |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
446 try |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
447 exec 'language ctype' locale |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
448 catch /^Vim\%((\a\+)\)\=:E197/ |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
449 continue |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
450 endtry |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
451 let done = 0 |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
452 for fontset in fontsets |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
453 try |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
454 exec 'set guifontset=' . fontset |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
455 catch /^Vim\%((\a\+)\)\=:E\%(250\|252\|234\|597\|598\)/ |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
456 break |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
457 endtry |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
458 let done += 1 |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
459 endfor |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
460 if done == len(fontsets) |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
461 let feasible = 1 |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
462 break |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
463 endif |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
464 endfor |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
465 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
466 " Third, give a set of tests if it is found feasible. |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
467 if !feasible |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
468 let skipped = g:not_hosted |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
469 else |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
470 " N.B. 'v:ctype' has already been set to an appropriate value in the |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
471 " previous loop. |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
472 for fontset in fontsets |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
473 exec 'set guifontset=' . fontset |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
474 call assert_equal(fontset, &guifontset) |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
475 endfor |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
476 endif |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
477 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
478 " Finally, restore ctype. |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
479 exec 'language ctype' ctype_saved |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
480 |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
481 if !empty(skipped) |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
482 throw skipped |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
483 endif |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
484 endfunc |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
485 |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
486 func Test_set_guifontwide() |
19932
2c4d9ca33769
patch 8.2.0522: several errors are not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
487 call assert_fails('set guifontwide=*', 'E533:') |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
488 let skipped = '' |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
489 |
10944
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
490 if !g:x11_based_gui |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
491 let skipped = g:not_implemented |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
492 elseif has('gui_gtk') |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
493 let guifont_saved = &guifont |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
494 let guifontwide_saved = &guifontwide |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
495 |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
496 let fc_match = exepath('fc-match') |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
497 if empty(fc_match) |
10944
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
498 let skipped = g:not_hosted |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
499 else |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
500 let &guifont = system('fc-match -f "%{family[0]} %{size}" monospace:size=10:lang=en') |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
501 let wide = system('fc-match -f "%{family[0]} %{size}" monospace:size=10:lang=ja') |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
502 exec 'set guifontwide=' . fnameescape(wide) |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
503 call assert_equal(wide, &guifontwide) |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
504 endif |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
505 |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
506 let &guifontwide = guifontwide_saved |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
507 let &guifont = guifont_saved |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
508 |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
509 elseif has('gui_athena') || has('gui_motif') |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
510 " guifontwide is premised upon the xfontset feature. |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
511 if !has('xfontset') |
10944
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
512 let skipped = g:not_supported . 'xfontset' |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
513 else |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
514 let encoding_saved = &encoding |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
515 let guifont_saved = &guifont |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
516 let guifontset_saved = &guifontset |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
517 let guifontwide_saved = &guifontwide |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
518 |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
519 let nfont = '-misc-fixed-medium-r-normal-*-18-120-100-100-c-90-iso10646-1' |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
520 let wfont = '-misc-fixed-medium-r-normal-*-18-120-100-100-c-180-iso10646-1' |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
521 |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
522 set encoding=utf-8 |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
523 |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
524 " Case 1: guifontset is empty |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
525 set guifontset= |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
526 |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
527 " Case 1-1: Automatic selection |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
528 set guifontwide= |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
529 exec 'set guifont=' . nfont |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
530 call assert_equal(wfont, &guifontwide) |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
531 |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
532 " Case 1-2: Manual selection |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
533 exec 'set guifontwide=' . wfont |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
534 exec 'set guifont=' . nfont |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
535 call assert_equal(wfont, &guifontwide) |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
536 |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
537 " Case 2: guifontset is invalid |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
538 try |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
539 set guifontset=-*-notexist-* |
11183
1c4ebbae41d2
patch 8.0.0478: tests use assert_true(0) and assert_false(1) to report errors
Christian Brabandt <cb@256bit.org>
parents:
11119
diff
changeset
|
540 call assert_report("'set guifontset=-*-notexist-*' should have failed") |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
541 catch |
22087
ff21e2962490
patch 8.2.1593: tests do not check the error number properly
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
542 call assert_exception('E598:') |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
543 endtry |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
544 " Set it to an invalid value brutally for preparation. |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
545 let &guifontset = '-*-notexist-*' |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
546 |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
547 " Case 2-1: Automatic selection |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
548 set guifontwide= |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
549 exec 'set guifont=' . nfont |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
550 call assert_equal(wfont, &guifontwide) |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
551 |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
552 " Case 2-2: Manual selection |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
553 exec 'set guifontwide=' . wfont |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
554 exec 'set guifont=' . nfont |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
555 call assert_equal(wfont, &guifontwide) |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
556 |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
557 let &guifontwide = guifontwide_saved |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
558 let &guifontset = guifontset_saved |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
559 let &guifont = guifont_saved |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
560 let &encoding = encoding_saved |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
561 endif |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
562 endif |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
563 |
10885
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
564 if !empty(skipped) |
310834b0256a
patch 8.0.0332: GUI test fails on some systems
Christian Brabandt <cb@256bit.org>
parents:
10879
diff
changeset
|
565 throw skipped |
10879
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
566 endif |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
567 endfunc |
1fce74a5a628
patch 8.0.0329: xfontset and guifontwide are not tested
Christian Brabandt <cb@256bit.org>
parents:
10857
diff
changeset
|
568 |
10944
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
569 func Test_set_guiheadroom() |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
570 let skipped = '' |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
571 |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
572 if !g:x11_based_gui |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
573 let skipped = g:not_supported . 'guiheadroom' |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
574 else |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
575 " Since this script is to be read together with '-U NONE', the default |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
576 " value must be preserved. |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
577 call assert_equal(50, &guiheadroom) |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
578 endif |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
579 |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
580 if !empty(skipped) |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
581 throw skipped |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
582 endif |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
583 endfunc |
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
584 |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
585 func Test_set_guioptions() |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
586 let guioptions_saved = &guioptions |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
587 let duration = '200m' |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
588 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
589 if has('win32') |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
590 " Default Value |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
591 set guioptions& |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
592 call assert_equal('egmrLtT', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
593 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
594 else |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
595 " Default Value |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
596 set guioptions& |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
597 call assert_equal('aegimrLtT', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
598 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
599 " To activate scrollbars of type 'L' or 'R'. |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
600 wincmd v |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
601 redraw! |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
602 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
603 " Remove all default GUI ornaments |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
604 set guioptions-=T |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
605 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
606 call assert_equal('aegimrLt', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
607 set guioptions-=t |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
608 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
609 call assert_equal('aegimrL', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
610 set guioptions-=L |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
611 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
612 call assert_equal('aegimr', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
613 set guioptions-=r |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
614 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
615 call assert_equal('aegim', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
616 set guioptions-=m |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
617 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
618 call assert_equal('aegi', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
619 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
620 " Try non-default GUI ornaments |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
621 set guioptions+=l |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
622 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
623 call assert_equal('aegil', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
624 set guioptions-=l |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
625 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
626 call assert_equal('aegi', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
627 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
628 set guioptions+=R |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
629 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
630 call assert_equal('aegiR', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
631 set guioptions-=R |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
632 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
633 call assert_equal('aegi', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
634 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
635 set guioptions+=b |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
636 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
637 call assert_equal('aegib', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
638 set guioptions+=h |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
639 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
640 call assert_equal('aegibh', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
641 set guioptions-=h |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
642 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
643 call assert_equal('aegib', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
644 set guioptions-=b |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
645 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
646 call assert_equal('aegi', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
647 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
648 set guioptions+=v |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
649 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
650 call assert_equal('aegiv', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
651 set guioptions-=v |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
652 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
653 call assert_equal('aegi', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
654 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
655 if has('gui_motif') |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
656 set guioptions+=F |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
657 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
658 call assert_equal('aegiF', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
659 set guioptions-=F |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
660 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
661 call assert_equal('aegi', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
662 endif |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
663 |
18078
5ae41d0ea397
patch 8.1.2034: dark them of GTK 3 not supported
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
664 if has('gui_gtk3') |
5ae41d0ea397
patch 8.1.2034: dark them of GTK 3 not supported
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
665 set guioptions+=d |
5ae41d0ea397
patch 8.1.2034: dark them of GTK 3 not supported
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
666 exec 'sleep' . duration |
5ae41d0ea397
patch 8.1.2034: dark them of GTK 3 not supported
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
667 call assert_equal('aegid', &guioptions) |
5ae41d0ea397
patch 8.1.2034: dark them of GTK 3 not supported
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
668 set guioptions-=d |
5ae41d0ea397
patch 8.1.2034: dark them of GTK 3 not supported
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
669 exec 'sleep' . duration |
5ae41d0ea397
patch 8.1.2034: dark them of GTK 3 not supported
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
670 call assert_equal('aegi', &guioptions) |
5ae41d0ea397
patch 8.1.2034: dark them of GTK 3 not supported
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
671 endif |
5ae41d0ea397
patch 8.1.2034: dark them of GTK 3 not supported
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
672 |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
673 " Restore GUI ornaments to the default state. |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
674 set guioptions+=m |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
675 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
676 call assert_equal('aegim', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
677 set guioptions+=r |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
678 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
679 call assert_equal('aegimr', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
680 set guioptions+=L |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
681 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
682 call assert_equal('aegimrL', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
683 set guioptions+=t |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
684 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
685 call assert_equal('aegimrLt', &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
686 set guioptions+=T |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
687 exec 'sleep' . duration |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
688 call assert_equal("aegimrLtT", &guioptions) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
689 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
690 wincmd o |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
691 redraw! |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
692 endif |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
693 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
694 let &guioptions = guioptions_saved |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
695 endfunc |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
696 |
14756
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
697 func Test_scrollbars() |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
698 new |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
699 " buffer with 200 lines |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
700 call setline(1, repeat(['one', 'two'], 100)) |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
701 set guioptions+=rlb |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
702 |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
703 " scroll to move line 11 at top, moves the cursor there |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17698
diff
changeset
|
704 eval 10->test_scrollbar('left', 0) |
14756
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
705 redraw |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
706 call assert_equal(1, winline()) |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
707 call assert_equal(11, line('.')) |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
708 |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
709 " scroll to move line 1 at top, cursor stays in line 11 |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
710 call test_scrollbar('right', 0, 0) |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
711 redraw |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
712 call assert_equal(11, winline()) |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
713 call assert_equal(11, line('.')) |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
714 |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
715 set nowrap |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
716 call setline(11, repeat('x', 150)) |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
717 redraw |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
718 call assert_equal(1, wincol()) |
16963
1fbb0a33b074
patch 8.1.1482: no test for wincol() depending on the 'number' option
Bram Moolenaar <Bram@vim.org>
parents:
16121
diff
changeset
|
719 set number |
1fbb0a33b074
patch 8.1.1482: no test for wincol() depending on the 'number' option
Bram Moolenaar <Bram@vim.org>
parents:
16121
diff
changeset
|
720 redraw |
1fbb0a33b074
patch 8.1.1482: no test for wincol() depending on the 'number' option
Bram Moolenaar <Bram@vim.org>
parents:
16121
diff
changeset
|
721 call assert_equal(5, wincol()) |
1fbb0a33b074
patch 8.1.1482: no test for wincol() depending on the 'number' option
Bram Moolenaar <Bram@vim.org>
parents:
16121
diff
changeset
|
722 set nonumber |
1fbb0a33b074
patch 8.1.1482: no test for wincol() depending on the 'number' option
Bram Moolenaar <Bram@vim.org>
parents:
16121
diff
changeset
|
723 redraw |
14756
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
724 call assert_equal(1, col('.')) |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
725 |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
726 " scroll to character 11, cursor is moved |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
727 call test_scrollbar('hor', 10, 0) |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
728 redraw |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
729 call assert_equal(1, wincol()) |
16963
1fbb0a33b074
patch 8.1.1482: no test for wincol() depending on the 'number' option
Bram Moolenaar <Bram@vim.org>
parents:
16121
diff
changeset
|
730 set number |
1fbb0a33b074
patch 8.1.1482: no test for wincol() depending on the 'number' option
Bram Moolenaar <Bram@vim.org>
parents:
16121
diff
changeset
|
731 redraw |
1fbb0a33b074
patch 8.1.1482: no test for wincol() depending on the 'number' option
Bram Moolenaar <Bram@vim.org>
parents:
16121
diff
changeset
|
732 call assert_equal(5, wincol()) |
1fbb0a33b074
patch 8.1.1482: no test for wincol() depending on the 'number' option
Bram Moolenaar <Bram@vim.org>
parents:
16121
diff
changeset
|
733 set nonumber |
1fbb0a33b074
patch 8.1.1482: no test for wincol() depending on the 'number' option
Bram Moolenaar <Bram@vim.org>
parents:
16121
diff
changeset
|
734 redraw |
14756
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
735 call assert_equal(11, col('.')) |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
736 |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
737 set guioptions& |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
738 set wrap& |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
739 bwipe! |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
740 endfunc |
a179e5cfcab7
patch 8.1.0390: scrollbars are not tested
Christian Brabandt <cb@256bit.org>
parents:
13940
diff
changeset
|
741 |
16121
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
742 func Test_menu() |
18767
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18078
diff
changeset
|
743 CheckFeature quickfix |
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18078
diff
changeset
|
744 |
16121
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
745 " Check Help menu exists |
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
746 let help_menu = execute('menu Help') |
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
747 call assert_match('Overview', help_menu) |
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
748 |
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
749 " Check Help menu works |
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
750 emenu Help.Overview |
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
751 call assert_equal('help', &buftype) |
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
752 close |
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
753 |
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
754 " Check deleting menu doesn't cause trouble. |
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
755 aunmenu Help |
22439
445799159195
patch 8.2.1768: cannot use the help menu from a terminal window
Bram Moolenaar <Bram@vim.org>
parents:
22087
diff
changeset
|
756 if exists(':tlmenu') |
445799159195
patch 8.2.1768: cannot use the help menu from a terminal window
Bram Moolenaar <Bram@vim.org>
parents:
22087
diff
changeset
|
757 tlunmenu Help |
445799159195
patch 8.2.1768: cannot use the help menu from a terminal window
Bram Moolenaar <Bram@vim.org>
parents:
22087
diff
changeset
|
758 endif |
16121
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
759 call assert_fails('menu Help', 'E329:') |
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
760 endfunc |
060b58b492a5
patch 8.1.1065: no test for using and deleting menu in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
16119
diff
changeset
|
761 |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
762 func Test_set_guipty() |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
763 let guipty_saved = &guipty |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
764 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
765 " Default Value |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
766 set guipty& |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
767 call assert_equal(1, &guipty) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
768 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
769 set noguipty |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
770 call assert_equal(0, &guipty) |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
771 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
772 let &guipty = guipty_saved |
10847
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
773 endfunc |
10841
5c0415a8b96e
patch 8.0.0310: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10777
diff
changeset
|
774 |
16119
4fac64b51d74
patch 8.1.1064: no test for output conversion in the GTK GUI
Bram Moolenaar <Bram@vim.org>
parents:
15394
diff
changeset
|
775 func Test_encoding_conversion() |
4fac64b51d74
patch 8.1.1064: no test for output conversion in the GTK GUI
Bram Moolenaar <Bram@vim.org>
parents:
15394
diff
changeset
|
776 " GTK supports conversion between 'encoding' and "utf-8" |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
777 CheckFeature gui_gtk |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
778 let encoding_saved = &encoding |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
779 set encoding=latin1 |
16119
4fac64b51d74
patch 8.1.1064: no test for output conversion in the GTK GUI
Bram Moolenaar <Bram@vim.org>
parents:
15394
diff
changeset
|
780 |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
781 " would be nice if we could take a screenshot |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
782 intro |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
783 " sets the window title |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
784 edit SomeFile |
16119
4fac64b51d74
patch 8.1.1064: no test for output conversion in the GTK GUI
Bram Moolenaar <Bram@vim.org>
parents:
15394
diff
changeset
|
785 |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20701
diff
changeset
|
786 let &encoding = encoding_saved |
16119
4fac64b51d74
patch 8.1.1064: no test for output conversion in the GTK GUI
Bram Moolenaar <Bram@vim.org>
parents:
15394
diff
changeset
|
787 endfunc |
4fac64b51d74
patch 8.1.1064: no test for output conversion in the GTK GUI
Bram Moolenaar <Bram@vim.org>
parents:
15394
diff
changeset
|
788 |
9756
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
789 func Test_shell_command() |
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
790 new |
9760
96667173293d
commit https://github.com/vim/vim/commit/9d5b876d458e242b8b5e44da10c5cdc6bbb7f57c
Christian Brabandt <cb@256bit.org>
parents:
9756
diff
changeset
|
791 r !echo hello |
96667173293d
commit https://github.com/vim/vim/commit/9d5b876d458e242b8b5e44da10c5cdc6bbb7f57c
Christian Brabandt <cb@256bit.org>
parents:
9756
diff
changeset
|
792 call assert_equal('hello', substitute(getline(2), '\W', '', 'g')) |
9756
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
793 bwipe! |
00d753ea19a9
commit https://github.com/vim/vim/commit/877e95779869c5426102aa491f67d99904c8534c
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
794 endfunc |
10841
5c0415a8b96e
patch 8.0.0310: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10777
diff
changeset
|
795 |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
796 func Test_syntax_colortest() |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
797 runtime syntax/colortest.vim |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
798 redraw! |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
799 sleep 200m |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
800 bwipe! |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
801 endfunc |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
802 |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
803 func Test_set_term() |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
804 " It's enough to check the current value since setting 'term' to anything |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
805 " other than builtin_gui makes no sense at all. |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
806 call assert_equal('builtin_gui', &term) |
19932
2c4d9ca33769
patch 8.2.0522: several errors are not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
807 call assert_fails('set term=xterm', 'E530:') |
11119
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
808 endfunc |
d8a550329a97
patch 8.0.0447: getting font name does not work on X11
Christian Brabandt <cb@256bit.org>
parents:
11052
diff
changeset
|
809 |
10841
5c0415a8b96e
patch 8.0.0310: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10777
diff
changeset
|
810 func Test_windowid_variable() |
10944
4e2cdce4576c
patch 8.0.0361: GUI initialisation is not sufficiently tested
Christian Brabandt <cb@256bit.org>
parents:
10885
diff
changeset
|
811 if g:x11_based_gui || has('win32') |
10841
5c0415a8b96e
patch 8.0.0310: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10777
diff
changeset
|
812 call assert_true(v:windowid > 0) |
5c0415a8b96e
patch 8.0.0310: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10777
diff
changeset
|
813 else |
5c0415a8b96e
patch 8.0.0310: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10777
diff
changeset
|
814 call assert_equal(0, v:windowid) |
5c0415a8b96e
patch 8.0.0310: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10777
diff
changeset
|
815 endif |
10847
881194ae47a1
patch 8.0.0313: not enough testing for GUI functionality
Christian Brabandt <cb@256bit.org>
parents:
10841
diff
changeset
|
816 endfunc |
13843
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
817 |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
818 " Test "vim -g" and also the GUIEnter autocommand. |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
819 func Test_gui_dash_g() |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
820 let cmd = GetVimCommand('Xscriptgui') |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
821 call writefile([""], "Xtestgui") |
17172
6990c1160ea5
patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
822 let lines =<< trim END |
6990c1160ea5
patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
823 au GUIEnter * call writefile(["insertmode: " . &insertmode], "Xtestgui") |
6990c1160ea5
patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
824 au GUIEnter * qall |
6990c1160ea5
patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
825 END |
6990c1160ea5
patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
826 call writefile(lines, 'Xscriptgui') |
13843
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
827 call system(cmd . ' -g') |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
828 call WaitForAssert({-> assert_equal(['insertmode: 0'], readfile('Xtestgui'))}) |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
829 |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
830 call delete('Xscriptgui') |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
831 call delete('Xtestgui') |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
832 endfunc |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
833 |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
834 " Test "vim -7" and also the GUIEnter autocommand. |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
835 func Test_gui_dash_y() |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
836 let cmd = GetVimCommand('Xscriptgui') |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
837 call writefile([""], "Xtestgui") |
17172
6990c1160ea5
patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
838 let lines =<< trim END |
6990c1160ea5
patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
839 au GUIEnter * call writefile(["insertmode: " . &insertmode], "Xtestgui") |
6990c1160ea5
patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
840 au GUIEnter * qall |
6990c1160ea5
patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
841 END |
6990c1160ea5
patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
842 call writefile(lines, 'Xscriptgui') |
13843
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
843 call system(cmd . ' -y') |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
844 call WaitForAssert({-> assert_equal(['insertmode: 1'], readfile('Xtestgui'))}) |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
845 |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
846 call delete('Xscriptgui') |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
847 call delete('Xtestgui') |
619730d0d864
patch 8.0.1793: no test for "vim -g"
Christian Brabandt <cb@256bit.org>
parents:
13810
diff
changeset
|
848 endfunc |
19783
546bdeef35f1
patch 8.2.0448: various functions not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
18767
diff
changeset
|
849 |
20365
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
850 " Test for "!" option in 'guioptions'. Use a terminal for running external |
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
851 " commands |
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
852 func Test_gui_run_cmd_in_terminal() |
20417
86333cdb8cf8
patch 8.2.0763: GUI test fails without the terminal feature
Bram Moolenaar <Bram@vim.org>
parents:
20365
diff
changeset
|
853 CheckFeature terminal |
20365
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
854 let save_guioptions = &guioptions |
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
855 set guioptions+=! |
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
856 if has('win32') |
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
857 let cmd = 'type' |
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
858 else |
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
859 " assume all the other systems have a cat command |
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
860 let cmd = 'cat' |
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
861 endif |
20508
357dea6b9fde
patch 8.2.0808: not enough testing for the terminal window
Bram Moolenaar <Bram@vim.org>
parents:
20417
diff
changeset
|
862 exe "silent !" . cmd . " test_gui.vim" |
20365
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
863 " TODO: how to check that the command ran in a separate terminal? |
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
864 " Maybe check for $TERM (dumb vs xterm) in the spawned shell? |
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
865 let &guioptions = save_guioptions |
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
866 endfunc |
6bcd12791bf1
patch 8.2.0738: mouse handling in a terminal window not well tested
Bram Moolenaar <Bram@vim.org>
parents:
19997
diff
changeset
|
867 |
20701
fbee68c6aab1
patch 8.2.0904: assuming modifyOtherKeys for rhs of mapping
Bram Moolenaar <Bram@vim.org>
parents:
20508
diff
changeset
|
868 func Test_gui_recursive_mapping() |
fbee68c6aab1
patch 8.2.0904: assuming modifyOtherKeys for rhs of mapping
Bram Moolenaar <Bram@vim.org>
parents:
20508
diff
changeset
|
869 nmap ' <C-W> |
fbee68c6aab1
patch 8.2.0904: assuming modifyOtherKeys for rhs of mapping
Bram Moolenaar <Bram@vim.org>
parents:
20508
diff
changeset
|
870 nmap <C-W>a :let didit = 1<CR> |
fbee68c6aab1
patch 8.2.0904: assuming modifyOtherKeys for rhs of mapping
Bram Moolenaar <Bram@vim.org>
parents:
20508
diff
changeset
|
871 call feedkeys("'a", 'xt') |
fbee68c6aab1
patch 8.2.0904: assuming modifyOtherKeys for rhs of mapping
Bram Moolenaar <Bram@vim.org>
parents:
20508
diff
changeset
|
872 call assert_equal(1, didit) |
fbee68c6aab1
patch 8.2.0904: assuming modifyOtherKeys for rhs of mapping
Bram Moolenaar <Bram@vim.org>
parents:
20508
diff
changeset
|
873 |
fbee68c6aab1
patch 8.2.0904: assuming modifyOtherKeys for rhs of mapping
Bram Moolenaar <Bram@vim.org>
parents:
20508
diff
changeset
|
874 nunmap ' |
fbee68c6aab1
patch 8.2.0904: assuming modifyOtherKeys for rhs of mapping
Bram Moolenaar <Bram@vim.org>
parents:
20508
diff
changeset
|
875 nunmap <C-W>a |
fbee68c6aab1
patch 8.2.0904: assuming modifyOtherKeys for rhs of mapping
Bram Moolenaar <Bram@vim.org>
parents:
20508
diff
changeset
|
876 endfunc |
fbee68c6aab1
patch 8.2.0904: assuming modifyOtherKeys for rhs of mapping
Bram Moolenaar <Bram@vim.org>
parents:
20508
diff
changeset
|
877 |
24982
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
878 " Test GUI mouse events |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
879 func Test_gui_mouse_event() |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
880 set mousemodel=extend |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
881 call test_override('no_query_mouse', 1) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
882 new |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
883 call setline(1, ['one two three', 'four five six']) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
884 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
885 " place the cursor using left click in normal mode |
24982
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
886 call cursor(1, 1) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
887 call test_gui_mouse_event(0, 2, 4, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
888 call test_gui_mouse_event(3, 2, 4, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
889 call feedkeys("\<Esc>", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
890 call assert_equal([0, 2, 4, 0], getpos('.')) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
891 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
892 " select and yank a word |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
893 let @" = '' |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
894 call test_gui_mouse_event(0, 1, 9, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
895 call test_gui_mouse_event(0, 1, 9, 1, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
896 call test_gui_mouse_event(3, 1, 9, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
897 call feedkeys("y", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
898 call assert_equal('three', @") |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
899 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
900 " create visual selection using right click |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
901 let @" = '' |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
902 call test_gui_mouse_event(0, 2, 6, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
903 call test_gui_mouse_event(3, 2, 6, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
904 call test_gui_mouse_event(2, 2, 13, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
905 call test_gui_mouse_event(3, 2, 13, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
906 call feedkeys("y", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
907 call assert_equal('five six', @") |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
908 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
909 " paste using middle mouse button |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
910 let @* = 'abc ' |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
911 call feedkeys('""', 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
912 call test_gui_mouse_event(1, 1, 9, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
913 call test_gui_mouse_event(3, 1, 9, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
914 call feedkeys("\<Esc>", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
915 call assert_equal(['one two abc three', 'four five six'], getline(1, '$')) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
916 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
917 " extend visual selection using right click in visual mode |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
918 let @" = '' |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
919 call cursor(1, 1) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
920 call feedkeys('v', 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
921 call test_gui_mouse_event(2, 1, 17, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
922 call test_gui_mouse_event(3, 1, 17, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
923 call feedkeys("y", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
924 call assert_equal('one two abc three', @") |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
925 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
926 " extend visual selection using mouse drag |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
927 let @" = '' |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
928 call cursor(1, 1) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
929 call test_gui_mouse_event(0, 2, 1, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
930 call test_gui_mouse_event(0x43, 2, 9, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
931 call test_gui_mouse_event(0x3, 2, 9, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
932 call feedkeys("y", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
933 call assert_equal('four five', @") |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
934 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
935 " select text by moving the mouse |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
936 let @" = '' |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
937 call cursor(1, 1) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
938 redraw! |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
939 call test_gui_mouse_event(0, 1, 4, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
940 call test_gui_mouse_event(0x700, 1, 9, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
941 call test_gui_mouse_event(0x700, 1, 13, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
942 call test_gui_mouse_event(0x3, 1, 13, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
943 call feedkeys("y", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
944 call assert_equal(' two abc t', @") |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
945 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
946 " Using mouse in insert mode |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
947 call cursor(1, 1) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
948 call feedkeys('i', 't') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
949 call test_gui_mouse_event(0, 2, 11, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
950 call test_gui_mouse_event(3, 2, 11, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
951 call feedkeys("po\<Esc>", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
952 call assert_equal(['one two abc three', 'four five posix'], getline(1, '$')) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
953 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
954 %d _ |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
955 call setline(1, range(1, 100)) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
956 " scroll up |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
957 call test_gui_mouse_event(0x200, 2, 1, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
958 call test_gui_mouse_event(0x200, 2, 1, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
959 call test_gui_mouse_event(0x200, 2, 1, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
960 call feedkeys("H", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
961 call assert_equal(10, line('.')) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
962 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
963 " scroll down |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
964 call test_gui_mouse_event(0x100, 2, 1, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
965 call test_gui_mouse_event(0x100, 2, 1, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
966 call feedkeys("H", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
967 call assert_equal(4, line('.')) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
968 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
969 %d _ |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
970 set nowrap |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
971 call setline(1, range(10)->join('')->repeat(10)) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
972 " scroll left |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
973 call test_gui_mouse_event(0x500, 1, 5, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
974 call test_gui_mouse_event(0x500, 1, 10, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
975 call test_gui_mouse_event(0x500, 1, 15, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
976 call feedkeys('g0', 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
977 call assert_equal(19, col('.')) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
978 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
979 " scroll right |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
980 call test_gui_mouse_event(0x600, 1, 15, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
981 call test_gui_mouse_event(0x600, 1, 10, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
982 call feedkeys('g0', 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
983 call assert_equal(7, col('.')) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
984 set wrap& |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
985 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
986 %d _ |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
987 call setline(1, repeat([repeat('a', 60)], 10)) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
988 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
989 " record various mouse events |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
990 let mouseEventNames = [ |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
991 \ 'LeftMouse', 'LeftRelease', '2-LeftMouse', '3-LeftMouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
992 \ 'S-LeftMouse', 'A-LeftMouse', 'C-LeftMouse', 'MiddleMouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
993 \ 'MiddleRelease', '2-MiddleMouse', '3-MiddleMouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
994 \ 'S-MiddleMouse', 'A-MiddleMouse', 'C-MiddleMouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
995 \ 'RightMouse', 'RightRelease', '2-RightMouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
996 \ '3-RightMouse', 'S-RightMouse', 'A-RightMouse', 'C-RightMouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
997 \ 'X1Mouse', 'S-X1Mouse', 'A-X1Mouse', 'C-X1Mouse', 'X2Mouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
998 \ 'S-X2Mouse', 'A-X2Mouse', 'C-X2Mouse' |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
999 \ ] |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1000 let mouseEventCodes = map(copy(mouseEventNames), "'<' .. v:val .. '>'") |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1001 let g:events = [] |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1002 for e in mouseEventCodes |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1003 exe 'nnoremap ' .. e .. ' <Cmd>call add(g:events, "' .. |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1004 \ substitute(e, '[<>]', '', 'g') .. '")<CR>' |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1005 endfor |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1006 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1007 " Test various mouse buttons (0 - Left, 1 - Middle, 2 - Right, 0x300 - X1, |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1008 " 0x300- X2) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1009 for button in [0, 1, 2, 0x300, 0x400] |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1010 " Single click |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1011 call test_gui_mouse_event(button, 2, 5, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1012 call test_gui_mouse_event(3, 2, 5, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1013 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1014 " Double/Triple click is supported by only the Left/Middle/Right mouse |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1015 " buttons |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1016 if button <= 2 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1017 " Double Click |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1018 call test_gui_mouse_event(button, 2, 5, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1019 call test_gui_mouse_event(button, 2, 5, 1, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1020 call test_gui_mouse_event(3, 2, 5, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1021 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1022 " Triple Click |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1023 call test_gui_mouse_event(button, 2, 5, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1024 call test_gui_mouse_event(button, 2, 5, 1, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1025 call test_gui_mouse_event(button, 2, 5, 1, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1026 call test_gui_mouse_event(3, 2, 5, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1027 endif |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1028 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1029 " Shift click |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1030 call test_gui_mouse_event(button, 3, 7, 0, 4) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1031 call test_gui_mouse_event(3, 3, 7, 0, 4) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1032 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1033 " Alt click |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1034 call test_gui_mouse_event(button, 3, 7, 0, 8) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1035 call test_gui_mouse_event(3, 3, 7, 0, 8) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1036 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1037 " Ctrl click |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1038 call test_gui_mouse_event(button, 3, 7, 0, 16) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1039 call test_gui_mouse_event(3, 3, 7, 0, 16) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1040 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1041 call feedkeys("\<Esc>", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1042 endfor |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1043 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1044 call assert_equal(['LeftMouse', 'LeftRelease', 'LeftMouse', '2-LeftMouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1045 \ 'LeftMouse', '2-LeftMouse', '3-LeftMouse', 'S-LeftMouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1046 \ 'A-LeftMouse', 'C-LeftMouse', 'MiddleMouse', 'MiddleRelease', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1047 \ 'MiddleMouse', '2-MiddleMouse', 'MiddleMouse', '2-MiddleMouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1048 \ '3-MiddleMouse', 'S-MiddleMouse', 'A-MiddleMouse', 'C-MiddleMouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1049 \ 'RightMouse', 'RightRelease', 'RightMouse', '2-RightMouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1050 \ 'RightMouse', '2-RightMouse', '3-RightMouse', 'S-RightMouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1051 \ 'A-RightMouse', 'C-RightMouse', 'X1Mouse', 'S-X1Mouse', 'A-X1Mouse', |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1052 \ 'C-X1Mouse', 'X2Mouse', 'S-X2Mouse', 'A-X2Mouse', 'C-X2Mouse'], |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1053 \ g:events) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1054 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1055 for e in mouseEventCodes |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1056 exe 'nunmap ' .. e |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1057 endfor |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1058 |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1059 " modeless selection |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1060 set mouse= |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1061 let save_guioptions = &guioptions |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1062 set guioptions+=A |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1063 %d _ |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1064 call setline(1, ['one two three', 'four five sixteen']) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1065 call cursor(1, 1) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1066 redraw! |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1067 " Double click should select the word and copy it to clipboard |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1068 let @* = '' |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1069 call test_gui_mouse_event(0, 2, 11, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1070 call test_gui_mouse_event(0, 2, 11, 1, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1071 call test_gui_mouse_event(3, 2, 11, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1072 call feedkeys("\<Esc>", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1073 call assert_equal([0, 1, 1, 0], getpos('.')) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1074 call assert_equal('sixteen', @*) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1075 " Right click should extend the selection from cursor |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1076 call cursor(1, 6) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1077 redraw! |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1078 let @* = '' |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1079 call test_gui_mouse_event(2, 1, 11, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1080 call test_gui_mouse_event(3, 1, 11, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1081 call feedkeys("\<Esc>", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1082 call assert_equal([0, 1, 6, 0], getpos('.')) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1083 call assert_equal('wo thr', @*) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1084 " Middle click should paste the clipboard contents |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1085 call cursor(2, 1) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1086 redraw! |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1087 call test_gui_mouse_event(1, 1, 11, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1088 call test_gui_mouse_event(3, 1, 11, 0, 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1089 call feedkeys("\<Esc>", 'Lx!') |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1090 call assert_equal([0, 2, 7, 0], getpos('.')) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1091 call assert_equal('wo thrfour five sixteen', getline(2)) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1092 set mouse& |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1093 let &guioptions = save_guioptions |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1094 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1095 " Test invalid parameters for test_gui_mouse_event() |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25112
diff
changeset
|
1096 call assert_fails('call test_gui_mouse_event("", 1, 2, 3, 4)', 'E1210:') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25112
diff
changeset
|
1097 call assert_fails('call test_gui_mouse_event(0, "", 2, 3, 4)', 'E1210:') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25112
diff
changeset
|
1098 call assert_fails('call test_gui_mouse_event(0, 1, "", 3, 4)', 'E1210:') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25112
diff
changeset
|
1099 call assert_fails('call test_gui_mouse_event(0, 1, 2, "", 4)', 'E1210:') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25112
diff
changeset
|
1100 call assert_fails('call test_gui_mouse_event(0, 1, 2, 3, "")', 'E1210:') |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1101 |
24982
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1102 bw! |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1103 call test_override('no_query_mouse', 0) |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1104 set mousemodel& |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1105 endfunc |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24035
diff
changeset
|
1106 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1107 " Test for 'guitablabel' and 'guitabtooltip' options |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1108 func TestGuiTabLabel() |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1109 call add(g:TabLabels, v:lnum + 100) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1110 let bufnrlist = tabpagebuflist(v:lnum) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1111 return bufname(bufnrlist[tabpagewinnr(v:lnum) - 1]) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1112 endfunc |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1113 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1114 func TestGuiTabToolTip() |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1115 call add(g:TabToolTips, v:lnum + 200) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1116 let bufnrlist = tabpagebuflist(v:lnum) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1117 return bufname(bufnrlist[tabpagewinnr(v:lnum) - 1]) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1118 endfunc |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1119 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1120 func Test_gui_tablabel_tooltip() |
25112
c39a64bc5ca2
patch 8.2.3093: tablabel_tooltip test fails with Athena
Bram Moolenaar <Bram@vim.org>
parents:
25060
diff
changeset
|
1121 CheckNotFeature gui_athena |
c39a64bc5ca2
patch 8.2.3093: tablabel_tooltip test fails with Athena
Bram Moolenaar <Bram@vim.org>
parents:
25060
diff
changeset
|
1122 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1123 %bw! |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1124 " Removing the tabline at the end of this test, reduces the window height by |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1125 " one. Save and restore it after the test. |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1126 let save_lines = &lines |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1127 edit one |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1128 set modified |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1129 tabnew two |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1130 set modified |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1131 tabnew three |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1132 set modified |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1133 let g:TabLabels = [] |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1134 set guitablabel=%{TestGuiTabLabel()} |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1135 call test_override('starting', 1) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1136 redrawtabline |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1137 call test_override('starting', 0) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1138 call assert_true(index(g:TabLabels, 101) != -1) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1139 call assert_true(index(g:TabLabels, 102) != -1) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1140 call assert_true(index(g:TabLabels, 103) != -1) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1141 set guitablabel& |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1142 unlet g:TabLabels |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1143 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1144 if has('gui_gtk') |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1145 " Only on GTK+, the tooltip function is called even if the mouse is not |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1146 " on the tabline. on Win32 and Motif, the tooltip function is called only |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1147 " when the mouse pointer is over the tabline. |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1148 let g:TabToolTips = [] |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1149 set guitabtooltip=%{TestGuiTabToolTip()} |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1150 call test_override('starting', 1) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1151 redrawtabline |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1152 call test_override('starting', 0) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1153 call assert_true(index(g:TabToolTips, 201) != -1) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1154 call assert_true(index(g:TabToolTips, 202) != -1) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1155 call assert_true(index(g:TabToolTips, 203) != -1) |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1156 set guitabtooltip& |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1157 unlet g:TabToolTips |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1158 endif |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1159 %bw! |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1160 let &lines = save_lines |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1161 endfunc |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
1162 |
25006
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1163 " Test for dropping files into a window in GUI |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1164 func DropFilesInCmdLine() |
25060
54c0cb81e6a7
patch 8.2.3067: building fails with Athena
Bram Moolenaar <Bram@vim.org>
parents:
25006
diff
changeset
|
1165 CheckFeature drop_file |
54c0cb81e6a7
patch 8.2.3067: building fails with Athena
Bram Moolenaar <Bram@vim.org>
parents:
25006
diff
changeset
|
1166 |
25006
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1167 call feedkeys(":\"", 'L') |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1168 call test_gui_drop_files(['a.c', 'b.c'], &lines, 1, 0) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1169 call feedkeys("\<CR>", 'L') |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1170 endfunc |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1171 |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1172 func Test_gui_drop_files() |
25060
54c0cb81e6a7
patch 8.2.3067: building fails with Athena
Bram Moolenaar <Bram@vim.org>
parents:
25006
diff
changeset
|
1173 CheckFeature drop_file |
54c0cb81e6a7
patch 8.2.3067: building fails with Athena
Bram Moolenaar <Bram@vim.org>
parents:
25006
diff
changeset
|
1174 |
25006
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1175 call assert_fails('call test_gui_drop_files(1, 1, 1, 0)', 'E474:') |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1176 call assert_fails('call test_gui_drop_files(["x"], "", 1, 0)', 'E474:') |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1177 call assert_fails('call test_gui_drop_files(["x"], 1, "", 0)', 'E474:') |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1178 call assert_fails('call test_gui_drop_files(["x"], 1, 1, "")', 'E474:') |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1179 |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1180 %bw! |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1181 %argdelete |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1182 call test_gui_drop_files([], 1, 1, 0) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1183 call assert_equal([], argv()) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1184 call test_gui_drop_files([1, 2], 1, 1, 0) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1185 call assert_equal([], argv()) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1186 |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1187 call test_gui_drop_files(['a.c', 'b.c'], 1, 1, 0) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1188 call assert_equal(['a.c', 'b.c'], argv()) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1189 %bw! |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1190 %argdelete |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1191 call test_gui_drop_files([], 1, 1, 0) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1192 call assert_equal([], argv()) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1193 %bw! |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1194 " if the buffer in the window is modified, then the file should be opened in |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1195 " a new window |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1196 set modified |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1197 call test_gui_drop_files(['x.c', 'y.c'], 1, 1, 0) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1198 call assert_equal(['x.c', 'y.c'], argv()) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1199 call assert_equal(2, winnr('$')) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1200 call assert_equal('x.c', bufname(winbufnr(1))) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1201 %bw! |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1202 %argdelete |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1203 " if Ctrl is pressed, then the file should be opened in a new window |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1204 call test_gui_drop_files(['s.py', 't.py'], 1, 1, 0x10) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1205 call assert_equal(['s.py', 't.py'], argv()) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1206 call assert_equal(2, winnr('$')) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1207 call assert_equal('s.py', bufname(winbufnr(1))) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1208 %bw! |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1209 %argdelete |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1210 " drop the files in a non-current window |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1211 belowright new |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1212 call test_gui_drop_files(['a.py', 'b.py'], 1, 1, 0) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1213 call assert_equal(['a.py', 'b.py'], argv()) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1214 call assert_equal(2, winnr('$')) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1215 call assert_equal(1, winnr()) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1216 call assert_equal('a.py', bufname(winbufnr(1))) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1217 %bw! |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1218 %argdelete |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1219 " pressing shift when dropping files should change directory |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1220 let save_cwd = getcwd() |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1221 call mkdir('Xdir1') |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1222 call writefile([], 'Xdir1/Xfile1') |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1223 call writefile([], 'Xdir1/Xfile2') |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1224 call test_gui_drop_files(['Xdir1/Xfile1', 'Xdir1/Xfile2'], 1, 1, 0x4) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1225 call assert_equal('Xdir1', fnamemodify(getcwd(), ':t')) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1226 call assert_equal('Xfile1', @%) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1227 call chdir(save_cwd) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1228 " pressing shift when dropping directory and files should change directory |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1229 call test_gui_drop_files(['Xdir1', 'Xdir1/Xfile2'], 1, 1, 0x4) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1230 call assert_equal('Xdir1', fnamemodify(getcwd(), ':t')) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1231 call assert_equal('Xdir1', fnamemodify(@%, ':t')) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1232 call chdir(save_cwd) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1233 %bw! |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1234 %argdelete |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1235 " dropping a directory should edit it |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1236 call test_gui_drop_files(['Xdir1'], 1, 1, 0) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1237 call assert_equal('Xdir1', @%) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1238 %bw! |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1239 %argdelete |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1240 " dropping only a directory name with Shift should ignore it |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1241 call test_gui_drop_files(['Xdir1'], 1, 1, 0x4) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1242 call assert_equal('', @%) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1243 %bw! |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1244 %argdelete |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1245 call delete('Xdir1', 'rf') |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1246 " drop files in the command line. The GUI drop files adds the file names to |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1247 " the low level input buffer. So need to use a cmdline map and feedkeys() |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1248 " with 'Lx!' to process it in this function itself. |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1249 cnoremap <expr> <buffer> <F4> DropFilesInCmdLine() |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1250 call feedkeys(":\"\<F4>\<CR>", 'xt') |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1251 call feedkeys('k', 'Lx!') |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1252 call assert_equal('"a.c b.c', @:) |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1253 cunmap <buffer> <F4> |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1254 endfunc |
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1255 |
19783
546bdeef35f1
patch 8.2.0448: various functions not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
18767
diff
changeset
|
1256 " vim: shiftwidth=2 sts=2 expandtab |