Mercurial > vim
annotate src/testdir/check.vim @ 24859:9c2028b33471
Added tag v8.2.2967 for changeset 193cc8bd8a2fa97917d3a957268db920545a75c3
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 09 Jun 2021 19:45:03 +0200 |
parents | 9257f3980f4a |
children | c39a64bc5ca2 |
rev | line source |
---|---|
18277
f6dcf7eabd26
patch 8.1.2133: some tests fail when run as root
Bram Moolenaar <Bram@vim.org>
parents:
17668
diff
changeset
|
1 source shared.vim |
19273
a4b65930a0dc
patch 8.2.0195: some tests fail when run in the GUI
Bram Moolenaar <Bram@vim.org>
parents:
19259
diff
changeset
|
2 source term_util.vim |
18277
f6dcf7eabd26
patch 8.1.2133: some tests fail when run as root
Bram Moolenaar <Bram@vim.org>
parents:
17668
diff
changeset
|
3 |
19259
77cce0439714
patch 8.2.0188: Check commands don't work well with Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
18736
diff
changeset
|
4 command -nargs=1 MissingFeature throw 'Skipped: ' .. <args> .. ' feature missing' |
77cce0439714
patch 8.2.0188: Check commands don't work well with Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
18736
diff
changeset
|
5 |
17089
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
6 " Command to check for the presence of a feature. |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
7 command -nargs=1 CheckFeature call CheckFeature(<f-args>) |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
8 func CheckFeature(name) |
19742
810eee1b42e3
patch 8.2.0427: it is not possible to check for a typo in a feature name
Bram Moolenaar <Bram@vim.org>
parents:
19273
diff
changeset
|
9 if !has(a:name, 1) |
810eee1b42e3
patch 8.2.0427: it is not possible to check for a typo in a feature name
Bram Moolenaar <Bram@vim.org>
parents:
19273
diff
changeset
|
10 throw 'Checking for non-existent feature ' .. a:name |
810eee1b42e3
patch 8.2.0427: it is not possible to check for a typo in a feature name
Bram Moolenaar <Bram@vim.org>
parents:
19273
diff
changeset
|
11 endif |
17089
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
12 if !has(a:name) |
19259
77cce0439714
patch 8.2.0188: Check commands don't work well with Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
18736
diff
changeset
|
13 MissingFeature a:name |
17089
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
14 endif |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
15 endfunc |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
16 |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
17 " Command to check for the presence of a working option. |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
18 command -nargs=1 CheckOption call CheckOption(<f-args>) |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
19 func CheckOption(name) |
19746
1da2fb80b512
patch 8.2.0429: no warning when test checks for option that never exists
Bram Moolenaar <Bram@vim.org>
parents:
19742
diff
changeset
|
20 if !exists('&' .. a:name) |
1da2fb80b512
patch 8.2.0429: no warning when test checks for option that never exists
Bram Moolenaar <Bram@vim.org>
parents:
19742
diff
changeset
|
21 throw 'Checking for non-existent option ' .. a:name |
1da2fb80b512
patch 8.2.0429: no warning when test checks for option that never exists
Bram Moolenaar <Bram@vim.org>
parents:
19742
diff
changeset
|
22 endif |
17089
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
23 if !exists('+' .. a:name) |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
24 throw 'Skipped: ' .. a:name .. ' option not supported' |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
25 endif |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
26 endfunc |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
27 |
19805
2dc5e6ddeb4c
patch 8.2.0459: cannot check if a function name is correct
Bram Moolenaar <Bram@vim.org>
parents:
19746
diff
changeset
|
28 " Command to check for the presence of a built-in function. |
17089
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
29 command -nargs=1 CheckFunction call CheckFunction(<f-args>) |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
30 func CheckFunction(name) |
19805
2dc5e6ddeb4c
patch 8.2.0459: cannot check if a function name is correct
Bram Moolenaar <Bram@vim.org>
parents:
19746
diff
changeset
|
31 if !exists('?' .. a:name) |
2dc5e6ddeb4c
patch 8.2.0459: cannot check if a function name is correct
Bram Moolenaar <Bram@vim.org>
parents:
19746
diff
changeset
|
32 throw 'Checking for non-existent function ' .. a:name |
2dc5e6ddeb4c
patch 8.2.0459: cannot check if a function name is correct
Bram Moolenaar <Bram@vim.org>
parents:
19746
diff
changeset
|
33 endif |
17089
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
34 if !exists('*' .. a:name) |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
35 throw 'Skipped: ' .. a:name .. ' function missing' |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
36 endif |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
37 endfunc |
17557
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
38 |
17657
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
39 " Command to check for the presence of an Ex command |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
40 command -nargs=1 CheckCommand call CheckCommand(<f-args>) |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
41 func CheckCommand(name) |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
42 if !exists(':' .. a:name) |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
43 throw 'Skipped: ' .. a:name .. ' command not supported' |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
44 endif |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
45 endfunc |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
46 |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
47 " Command to check for the presence of a shell command |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
48 command -nargs=1 CheckExecutable call CheckExecutable(<f-args>) |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
49 func CheckExecutable(name) |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
50 if !executable(a:name) |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
51 throw 'Skipped: ' .. a:name .. ' program not executable' |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
52 endif |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
53 endfunc |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
54 |
20219
820f24dc1e3e
patch 8.2.0665: wrongly assuming Python executable is called "python"
Bram Moolenaar <Bram@vim.org>
parents:
20003
diff
changeset
|
55 " Command to check for the presence of python. Argument should have been |
820f24dc1e3e
patch 8.2.0665: wrongly assuming Python executable is called "python"
Bram Moolenaar <Bram@vim.org>
parents:
20003
diff
changeset
|
56 " obtained with PythonProg() |
820f24dc1e3e
patch 8.2.0665: wrongly assuming Python executable is called "python"
Bram Moolenaar <Bram@vim.org>
parents:
20003
diff
changeset
|
57 func CheckPython(name) |
820f24dc1e3e
patch 8.2.0665: wrongly assuming Python executable is called "python"
Bram Moolenaar <Bram@vim.org>
parents:
20003
diff
changeset
|
58 if a:name == '' |
820f24dc1e3e
patch 8.2.0665: wrongly assuming Python executable is called "python"
Bram Moolenaar <Bram@vim.org>
parents:
20003
diff
changeset
|
59 throw 'Skipped: python command not available' |
820f24dc1e3e
patch 8.2.0665: wrongly assuming Python executable is called "python"
Bram Moolenaar <Bram@vim.org>
parents:
20003
diff
changeset
|
60 endif |
820f24dc1e3e
patch 8.2.0665: wrongly assuming Python executable is called "python"
Bram Moolenaar <Bram@vim.org>
parents:
20003
diff
changeset
|
61 endfunc |
820f24dc1e3e
patch 8.2.0665: wrongly assuming Python executable is called "python"
Bram Moolenaar <Bram@vim.org>
parents:
20003
diff
changeset
|
62 |
17557
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
63 " Command to check for running on MS-Windows |
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
64 command CheckMSWindows call CheckMSWindows() |
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
65 func CheckMSWindows() |
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
66 if !has('win32') |
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
67 throw 'Skipped: only works on MS-Windows' |
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
68 endif |
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
69 endfunc |
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
70 |
17657
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
71 " Command to check for NOT running on MS-Windows |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
72 command CheckNotMSWindows call CheckNotMSWindows() |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
73 func CheckNotMSWindows() |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
74 if has('win32') |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
75 throw 'Skipped: does not work on MS-Windows' |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
76 endif |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
77 endfunc |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
78 |
17557
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
79 " Command to check for running on Unix |
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
80 command CheckUnix call CheckUnix() |
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
81 func CheckUnix() |
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
82 if !has('unix') |
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
83 throw 'Skipped: only works on Unix' |
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
84 endif |
4a22102fda8f
patch 8.1.1776: text added with a job isn't displayed
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
85 endfunc |
17614
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
86 |
24091
12a773f4f62f
patch 8.2.2587: recover test fails on FreeBSD
Bram Moolenaar <Bram@vim.org>
parents:
23766
diff
changeset
|
87 " Command to check for running on Linix |
12a773f4f62f
patch 8.2.2587: recover test fails on FreeBSD
Bram Moolenaar <Bram@vim.org>
parents:
23766
diff
changeset
|
88 command CheckLinux call CheckLinux() |
12a773f4f62f
patch 8.2.2587: recover test fails on FreeBSD
Bram Moolenaar <Bram@vim.org>
parents:
23766
diff
changeset
|
89 func CheckLinux() |
12a773f4f62f
patch 8.2.2587: recover test fails on FreeBSD
Bram Moolenaar <Bram@vim.org>
parents:
23766
diff
changeset
|
90 if !has('linux') |
12a773f4f62f
patch 8.2.2587: recover test fails on FreeBSD
Bram Moolenaar <Bram@vim.org>
parents:
23766
diff
changeset
|
91 throw 'Skipped: only works on Linux' |
12a773f4f62f
patch 8.2.2587: recover test fails on FreeBSD
Bram Moolenaar <Bram@vim.org>
parents:
23766
diff
changeset
|
92 endif |
12a773f4f62f
patch 8.2.2587: recover test fails on FreeBSD
Bram Moolenaar <Bram@vim.org>
parents:
23766
diff
changeset
|
93 endfunc |
12a773f4f62f
patch 8.2.2587: recover test fails on FreeBSD
Bram Moolenaar <Bram@vim.org>
parents:
23766
diff
changeset
|
94 |
24268
9257f3980f4a
patch 8.2.2675: directory change in a terminal window shell is not followed
Bram Moolenaar <Bram@vim.org>
parents:
24172
diff
changeset
|
95 " Command to check for not running on a BSD system. |
9257f3980f4a
patch 8.2.2675: directory change in a terminal window shell is not followed
Bram Moolenaar <Bram@vim.org>
parents:
24172
diff
changeset
|
96 command CheckNotBSD call CheckNotBSD() |
9257f3980f4a
patch 8.2.2675: directory change in a terminal window shell is not followed
Bram Moolenaar <Bram@vim.org>
parents:
24172
diff
changeset
|
97 func CheckNotBSD() |
9257f3980f4a
patch 8.2.2675: directory change in a terminal window shell is not followed
Bram Moolenaar <Bram@vim.org>
parents:
24172
diff
changeset
|
98 if has('bsd') |
9257f3980f4a
patch 8.2.2675: directory change in a terminal window shell is not followed
Bram Moolenaar <Bram@vim.org>
parents:
24172
diff
changeset
|
99 throw 'Skipped: does not work on BSD' |
9257f3980f4a
patch 8.2.2675: directory change in a terminal window shell is not followed
Bram Moolenaar <Bram@vim.org>
parents:
24172
diff
changeset
|
100 endif |
9257f3980f4a
patch 8.2.2675: directory change in a terminal window shell is not followed
Bram Moolenaar <Bram@vim.org>
parents:
24172
diff
changeset
|
101 endfunc |
9257f3980f4a
patch 8.2.2675: directory change in a terminal window shell is not followed
Bram Moolenaar <Bram@vim.org>
parents:
24172
diff
changeset
|
102 |
17614
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
103 " Command to check that making screendumps is supported. |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
104 " Caller must source screendump.vim |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
105 command CheckScreendump call CheckScreendump() |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
106 func CheckScreendump() |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
107 if !CanRunVimInTerminal() |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
108 throw 'Skipped: cannot make screendumps' |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
109 endif |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
110 endfunc |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
111 |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
112 " Command to check that we can Run Vim in a terminal window |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
113 command CheckRunVimInTerminal call CheckRunVimInTerminal() |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
114 func CheckRunVimInTerminal() |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
115 if !CanRunVimInTerminal() |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
116 throw 'Skipped: cannot run Vim in a terminal window' |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
117 endif |
d7708560b77c
patch 8.1.1804: no test for display updating without a scroll region
Bram Moolenaar <Bram@vim.org>
parents:
17557
diff
changeset
|
118 endfunc |
17657
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
119 |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
120 " Command to check that we can run the GUI |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
121 command CheckCanRunGui call CheckCanRunGui() |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
122 func CheckCanRunGui() |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
123 if !has('gui') || ($DISPLAY == "" && !has('gui_running')) |
17668
923154c51bef
patch 8.1.1831: confusing skipped message
Bram Moolenaar <Bram@vim.org>
parents:
17657
diff
changeset
|
124 throw 'Skipped: cannot start the GUI' |
17657
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
125 endif |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
126 endfunc |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
127 |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
128 " Command to check that we are using the GUI |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
129 command CheckGui call CheckGui() |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
130 func CheckGui() |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
131 if !has('gui_running') |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
132 throw 'Skipped: only works in the GUI' |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
133 endif |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
134 endfunc |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
135 |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
136 " Command to check that not currently using the GUI |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
137 command CheckNotGui call CheckNotGui() |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
138 func CheckNotGui() |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
139 if has('gui_running') |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
140 throw 'Skipped: only works in the terminal' |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
141 endif |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17614
diff
changeset
|
142 endfunc |
18277
f6dcf7eabd26
patch 8.1.2133: some tests fail when run as root
Bram Moolenaar <Bram@vim.org>
parents:
17668
diff
changeset
|
143 |
f6dcf7eabd26
patch 8.1.2133: some tests fail when run as root
Bram Moolenaar <Bram@vim.org>
parents:
17668
diff
changeset
|
144 " Command to check that test is not running as root |
f6dcf7eabd26
patch 8.1.2133: some tests fail when run as root
Bram Moolenaar <Bram@vim.org>
parents:
17668
diff
changeset
|
145 command CheckNotRoot call CheckNotRoot() |
f6dcf7eabd26
patch 8.1.2133: some tests fail when run as root
Bram Moolenaar <Bram@vim.org>
parents:
17668
diff
changeset
|
146 func CheckNotRoot() |
f6dcf7eabd26
patch 8.1.2133: some tests fail when run as root
Bram Moolenaar <Bram@vim.org>
parents:
17668
diff
changeset
|
147 if IsRoot() |
f6dcf7eabd26
patch 8.1.2133: some tests fail when run as root
Bram Moolenaar <Bram@vim.org>
parents:
17668
diff
changeset
|
148 throw 'Skipped: cannot run test as root' |
f6dcf7eabd26
patch 8.1.2133: some tests fail when run as root
Bram Moolenaar <Bram@vim.org>
parents:
17668
diff
changeset
|
149 endif |
f6dcf7eabd26
patch 8.1.2133: some tests fail when run as root
Bram Moolenaar <Bram@vim.org>
parents:
17668
diff
changeset
|
150 endfunc |
19906
031184ace7c5
patch 8.2.0509: various code is not properly tested.
Bram Moolenaar <Bram@vim.org>
parents:
19805
diff
changeset
|
151 |
031184ace7c5
patch 8.2.0509: various code is not properly tested.
Bram Moolenaar <Bram@vim.org>
parents:
19805
diff
changeset
|
152 " Command to check that the current language is English |
031184ace7c5
patch 8.2.0509: various code is not properly tested.
Bram Moolenaar <Bram@vim.org>
parents:
19805
diff
changeset
|
153 command CheckEnglish call CheckEnglish() |
031184ace7c5
patch 8.2.0509: various code is not properly tested.
Bram Moolenaar <Bram@vim.org>
parents:
19805
diff
changeset
|
154 func CheckEnglish() |
031184ace7c5
patch 8.2.0509: various code is not properly tested.
Bram Moolenaar <Bram@vim.org>
parents:
19805
diff
changeset
|
155 if v:lang != "C" && v:lang !~ '^[Ee]n' |
031184ace7c5
patch 8.2.0509: various code is not properly tested.
Bram Moolenaar <Bram@vim.org>
parents:
19805
diff
changeset
|
156 throw 'Skipped: only works in English language environment' |
031184ace7c5
patch 8.2.0509: various code is not properly tested.
Bram Moolenaar <Bram@vim.org>
parents:
19805
diff
changeset
|
157 endif |
031184ace7c5
patch 8.2.0509: various code is not properly tested.
Bram Moolenaar <Bram@vim.org>
parents:
19805
diff
changeset
|
158 endfunc |
031184ace7c5
patch 8.2.0509: various code is not properly tested.
Bram Moolenaar <Bram@vim.org>
parents:
19805
diff
changeset
|
159 |
20003
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
160 " Command to check that loopback device has IPv6 address |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
161 command CheckIPv6 call CheckIPv6() |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
162 func CheckIPv6() |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
163 if !has('ipv6') |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
164 throw 'Skipped: cannot use IPv6 networking' |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
165 endif |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
166 if !exists('s:ipv6_loopback') |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
167 let s:ipv6_loopback = s:CheckIPv6Loopback() |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
168 endif |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
169 if !s:ipv6_loopback |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
170 throw 'Skipped: no IPv6 address for loopback device' |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
171 endif |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
172 endfunc |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
173 |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
174 func s:CheckIPv6Loopback() |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
175 if has('win32') |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
176 return system('netsh interface ipv6 show interface') =~? '\<Loopback\>' |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
177 elseif filereadable('/proc/net/if_inet6') |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
178 return (match(readfile('/proc/net/if_inet6'), '\slo$') >= 0) |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
179 elseif executable('ifconfig') |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
180 for dev in ['lo0', 'lo', 'loop'] |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
181 " NOTE: On SunOS, need specify address family 'inet6' to get IPv6 info. |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
182 if system('ifconfig ' .. dev .. ' inet6 2>/dev/null') =~? '\<inet6\>' |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
183 \ || system('ifconfig ' .. dev .. ' 2>/dev/null') =~? '\<inet6\>' |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
184 return v:true |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
185 endif |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
186 endfor |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
187 else |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
188 " TODO: How to check it in other platforms? |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
189 endif |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
190 return v:false |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
191 endfunc |
e373843e2980
patch 8.2.0557: no IPv6 support for channels
Bram Moolenaar <Bram@vim.org>
parents:
19906
diff
changeset
|
192 |
23766
704fdd4d0949
patch 8.2.2424: some tests are known to cause an error with ASAN
Bram Moolenaar <Bram@vim.org>
parents:
20219
diff
changeset
|
193 " Command to check for not running under ASAN |
704fdd4d0949
patch 8.2.2424: some tests are known to cause an error with ASAN
Bram Moolenaar <Bram@vim.org>
parents:
20219
diff
changeset
|
194 command CheckNotAsan call CheckNotAsan() |
704fdd4d0949
patch 8.2.2424: some tests are known to cause an error with ASAN
Bram Moolenaar <Bram@vim.org>
parents:
20219
diff
changeset
|
195 func CheckNotAsan() |
704fdd4d0949
patch 8.2.2424: some tests are known to cause an error with ASAN
Bram Moolenaar <Bram@vim.org>
parents:
20219
diff
changeset
|
196 if execute('version') =~# '-fsanitize=[a-z,]*\<address\>' |
704fdd4d0949
patch 8.2.2424: some tests are known to cause an error with ASAN
Bram Moolenaar <Bram@vim.org>
parents:
20219
diff
changeset
|
197 throw 'Skipped: does not work with ASAN' |
704fdd4d0949
patch 8.2.2424: some tests are known to cause an error with ASAN
Bram Moolenaar <Bram@vim.org>
parents:
20219
diff
changeset
|
198 endif |
704fdd4d0949
patch 8.2.2424: some tests are known to cause an error with ASAN
Bram Moolenaar <Bram@vim.org>
parents:
20219
diff
changeset
|
199 endfunc |
704fdd4d0949
patch 8.2.2424: some tests are known to cause an error with ASAN
Bram Moolenaar <Bram@vim.org>
parents:
20219
diff
changeset
|
200 |
24140
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
201 " Command to check for satisfying any of the conditions. |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
202 " e.g. CheckAnyOf Feature:bsd Feature:sun Linux |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
203 command -nargs=+ CheckAnyOf call CheckAnyOf(<f-args>) |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
204 func CheckAnyOf(...) |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
205 let excp = [] |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
206 for arg in a:000 |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
207 try |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
208 exe 'Check' .. substitute(arg, ':', ' ', '') |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
209 return |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
210 catch /^Skipped:/ |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
211 let excp += [substitute(v:exception, '^Skipped:\s*', '', '')] |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
212 endtry |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
213 endfor |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
214 throw 'Skipped: ' .. join(excp, '; ') |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
215 endfunc |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
216 |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
217 " Command to check for satisfying all of the conditions. |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
218 " e.g. CheckAllOf Unix Gui Option:ballooneval |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
219 command -nargs=+ CheckAllOf call CheckAllOf(<f-args>) |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
220 func CheckAllOf(...) |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
221 for arg in a:000 |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
222 exe 'Check' .. substitute(arg, ':', ' ', '') |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
223 endfor |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
224 endfunc |
af489e854955
patch 8.2.2611: conditions for startup tests are not exactly right
Bram Moolenaar <Bram@vim.org>
parents:
24091
diff
changeset
|
225 |
19906
031184ace7c5
patch 8.2.0509: various code is not properly tested.
Bram Moolenaar <Bram@vim.org>
parents:
19805
diff
changeset
|
226 " vim: shiftwidth=2 sts=2 expandtab |