Mercurial > vim
annotate runtime/doc/testing.txt @ 32590:635de73eeb4c
Update runtime files
Commit: https://github.com/vim/vim/commit/10e8ff9b26078994cae57c2422b145d37aaf714e
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Jun 10 21:40:39 2023 +0100
Update runtime files
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 10 Jun 2023 22:45:05 +0200 |
parents | c1f730c2b51e |
children | 448aef880252 |
rev | line source |
---|---|
32590 | 1 *testing.txt* For Vim version 9.0. Last change: 2023 May 18 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4 VIM REFERENCE MANUAL by Bram Moolenaar |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
5 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
6 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
7 Testing Vim and Vim script *testing-support* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
8 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
9 Expression evaluation is explained in |eval.txt|. This file goes into details |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
10 about writing tests in Vim script. This can be used for testing Vim itself |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
11 and for testing plugins. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
12 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
13 1. Testing Vim |testing| |
17571 | 14 2. Test functions |test-functions-details| |
15 3. Assert functions |assert-functions-details| | |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
16 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
17 ============================================================================== |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
18 1. Testing Vim *testing* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
19 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
20 Vim can be tested after building it, usually with "make test". |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
21 The tests are located in the directory "src/testdir". |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
22 |
21779
30bdd2e4a6f9
patch 8.2.1439: tiny and small builds have no test coverage
Bram Moolenaar <Bram@vim.org>
parents:
21741
diff
changeset
|
23 There are two types of tests added over time: |
30bdd2e4a6f9
patch 8.2.1439: tiny and small builds have no test coverage
Bram Moolenaar <Bram@vim.org>
parents:
21741
diff
changeset
|
24 test20.in oldest, only for tiny and small builds |
30bdd2e4a6f9
patch 8.2.1439: tiny and small builds have no test coverage
Bram Moolenaar <Bram@vim.org>
parents:
21741
diff
changeset
|
25 test_something.vim new style tests |
30bdd2e4a6f9
patch 8.2.1439: tiny and small builds have no test coverage
Bram Moolenaar <Bram@vim.org>
parents:
21741
diff
changeset
|
26 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
27 *new-style-testing* |
21741
baccf9e06efe
patch 8.2.1420: test 49 is old style
Bram Moolenaar <Bram@vim.org>
parents:
21499
diff
changeset
|
28 New tests should be added as new style tests. The test scripts are named |
baccf9e06efe
patch 8.2.1420: test 49 is old style
Bram Moolenaar <Bram@vim.org>
parents:
21499
diff
changeset
|
29 test_<feature>.vim (replace <feature> with the feature under test). These use |
baccf9e06efe
patch 8.2.1420: test 49 is old style
Bram Moolenaar <Bram@vim.org>
parents:
21499
diff
changeset
|
30 functions such as |assert_equal()| to keep the test commands and the expected |
baccf9e06efe
patch 8.2.1420: test 49 is old style
Bram Moolenaar <Bram@vim.org>
parents:
21499
diff
changeset
|
31 result in one place. |
21779
30bdd2e4a6f9
patch 8.2.1439: tiny and small builds have no test coverage
Bram Moolenaar <Bram@vim.org>
parents:
21741
diff
changeset
|
32 *old-style-testing* |
30bdd2e4a6f9
patch 8.2.1439: tiny and small builds have no test coverage
Bram Moolenaar <Bram@vim.org>
parents:
21741
diff
changeset
|
33 These tests are used only for testing Vim without the |+eval| feature. |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
34 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
35 Find more information in the file src/testdir/README.txt. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
36 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
37 ============================================================================== |
17571 | 38 2. Test functions *test-functions-details* |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
39 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
40 test_alloc_fail({id}, {countdown}, {repeat}) *test_alloc_fail()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
41 This is for testing: If the memory allocation with {id} is |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
42 called, then decrement {countdown}, and when it reaches zero |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
43 let memory allocation fail {repeat} times. When {repeat} is |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
44 smaller than one it fails one time. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
45 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
46 Can also be used as a |method|: > |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
47 GetAllocId()->test_alloc_fail() |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
48 |
25700 | 49 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
50 test_autochdir() *test_autochdir()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
51 Set a flag to enable the effect of 'autochdir' before Vim |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
52 startup has finished. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
53 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
54 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
55 test_feedinput({string}) *test_feedinput()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
56 Characters in {string} are queued for processing as if they |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
57 were typed by the user. This uses a low level input buffer. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
58 This function works only when with |+unix| or GUI is running. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
59 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
60 Can also be used as a |method|: > |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
61 GetText()->test_feedinput() |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
62 |
25700 | 63 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
64 test_garbagecollect_now() *test_garbagecollect_now()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
65 Like garbagecollect(), but executed right away. This must |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
66 only be called directly to avoid any structure to exist |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
67 internally, and |v:testing| must have been set before calling |
27537 | 68 any function. *E1142* |
69 This will not work when called from a :def function, because | |
70 variables on the stack will be freed. | |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
71 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
72 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
73 test_garbagecollect_soon() *test_garbagecollect_soon()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
74 Set the flag to call the garbagecollector as if in the main |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
75 loop. Only to be used in tests. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
76 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
77 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
78 test_getvalue({name}) *test_getvalue()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
79 Get the value of an internal variable. These values for |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
80 {name} are supported: |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
81 need_fileinfo |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
82 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
83 Can also be used as a |method|: > |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
84 GetName()->test_getvalue() |
24982
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24387
diff
changeset
|
85 < |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
86 *test_gui_event()* |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
87 test_gui_event({event}, {args}) |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
88 Generate a GUI {event} with arguments {args} for testing Vim |
27470
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
89 functionality. This function works only when the GUI is |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
90 running. |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
91 |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
92 {event} is a String and the supported values are: |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
93 "dropfiles" drop one or more files in a window. |
29290 | 94 "findrepl" search and replace text. |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
95 "mouse" mouse button click event. |
29290 | 96 "scrollbar" move or drag the scrollbar. |
31503
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
97 "key" send a low-level keyboard event. |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
98 "tabline" select a tab page by mouse click. |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
99 "tabmenu" select a tabline menu entry. |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
100 |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
101 {args} is a Dict and contains the arguments for the event. |
25973 | 102 |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
103 "dropfiles": |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
104 Drop one or more files in a specified window. The supported |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
105 items in {args} are: |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
106 files: List of file names |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
107 row: window row number |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
108 col: window column number |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
109 modifiers: key modifiers. The supported values are: |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
110 0x4 Shift |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
111 0x8 Alt |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
112 0x10 Ctrl |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
113 The files are added to the |argument-list| and the first |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
114 file in {files} is edited in the window. See |drag-n-drop| |
27470
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
115 for more information. This event works only when the |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
116 |drop_file| feature is present. |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
117 |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
118 "findrepl": |
27537 | 119 {only available when the GUI has a find/replace dialog} |
27470
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
120 Perform a search and replace of text. The supported items |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
121 in {args} are: |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
122 find_text: string to find. |
29290 | 123 repl_text: replacement string. |
27470
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
124 flags: flags controlling the find/replace. Supported |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
125 values are: |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
126 1 search next string (find dialog) |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
127 2 search next string (replace dialog) |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
128 3 replace string once |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
129 4 replace all matches |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
130 8 match whole words only |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
131 16 match case |
f0096e5b3df9
patch 8.2.4263: no test for the GUI find/replace dialog
Bram Moolenaar <Bram@vim.org>
parents:
27462
diff
changeset
|
132 forward: set to 1 for forward search. |
25006
496221916885
patch 8.2.3040: GUI: dropping files not tested
Bram Moolenaar <Bram@vim.org>
parents:
24982
diff
changeset
|
133 |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
134 "mouse": |
28297
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
135 Inject either a mouse button click, or a mouse move, event. |
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
136 The supported items in {args} are: |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
137 button: mouse button. The supported values are: |
31383 | 138 0 left mouse button |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
139 1 middle mouse button |
31383 | 140 2 right mouse button |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
141 3 mouse button release |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
142 4 scroll wheel down |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
143 5 scroll wheel up |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
144 6 scroll wheel left |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
145 7 scroll wheel right |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
146 row: mouse click row number. The first row of the |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
147 Vim window is 1 and the last row is 'lines'. |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
148 col: mouse click column number. The maximum value |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
149 of {col} is 'columns'. |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
150 multiclick: set to 1 to inject a multiclick mouse event. |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
151 modifiers: key modifiers. The supported values are: |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
152 4 shift is pressed |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
153 8 alt is pressed |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
154 16 ctrl is pressed |
28297
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
155 move: Optional; if used and TRUE then a mouse move |
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
156 event can be generated. |
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
157 Only {args} row: and col: are used and |
28885
947b7d061b07
patch 8.2.4965: GUI: testing mouse move event depends on screen cell size
Bram Moolenaar <Bram@vim.org>
parents:
28379
diff
changeset
|
158 required; they are interpreted as pixels or |
947b7d061b07
patch 8.2.4965: GUI: testing mouse move event depends on screen cell size
Bram Moolenaar <Bram@vim.org>
parents:
28379
diff
changeset
|
159 screen cells, depending on "cell". |
28297
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
160 Only results in an event when 'mousemoveevent' |
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
161 is set or a popup uses mouse move events. |
28885
947b7d061b07
patch 8.2.4965: GUI: testing mouse move event depends on screen cell size
Bram Moolenaar <Bram@vim.org>
parents:
28379
diff
changeset
|
162 cell: Optional: when present and TRUE then "move" |
947b7d061b07
patch 8.2.4965: GUI: testing mouse move event depends on screen cell size
Bram Moolenaar <Bram@vim.org>
parents:
28379
diff
changeset
|
163 uses screen cells instead of pixel positions |
28297
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
164 |
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
165 "scrollbar": |
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
166 Set or drag the left, right or horizontal scrollbar. Only |
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
167 works when the scrollbar actually exists. The supported |
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
168 items in {args} are: |
32590 | 169 which: Selects the scrollbar. The supported values |
170 are: | |
28297
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
171 left Left scrollbar of the current window |
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
172 right Right scrollbar of the current window |
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
173 hor Horizontal scrollbar |
32590 | 174 value: Amount to scroll. For the vertical scrollbars |
175 the value can be between 0 to the line-count | |
176 of the buffer minus one. For the horizontal | |
177 scrollbar the value can be between 1 and the | |
178 maximum line length, assuming 'wrap' is not | |
179 set. | |
28297
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
180 dragging: 1 to drag the scrollbar and 0 to click in the |
4190b932e6ca
patch 8.2.4674: cannot force getting MouseMove events
Bram Moolenaar <Bram@vim.org>
parents:
27634
diff
changeset
|
181 scrollbar. |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
182 |
31503
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
183 "key": |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
184 Send a low-level keyboard event (e.g. key-up or down). |
29432
339fe2968690
patch 9.0.0058: Win32: cannot test low level events
Bram Moolenaar <Bram@vim.org>
parents:
29340
diff
changeset
|
185 Currently only supported on MS-Windows. |
339fe2968690
patch 9.0.0058: Win32: cannot test low level events
Bram Moolenaar <Bram@vim.org>
parents:
29340
diff
changeset
|
186 The supported items in {args} are: |
339fe2968690
patch 9.0.0058: Win32: cannot test low level events
Bram Moolenaar <Bram@vim.org>
parents:
29340
diff
changeset
|
187 event: The supported string values are: |
339fe2968690
patch 9.0.0058: Win32: cannot test low level events
Bram Moolenaar <Bram@vim.org>
parents:
29340
diff
changeset
|
188 keyup generate a keyup event |
339fe2968690
patch 9.0.0058: Win32: cannot test low level events
Bram Moolenaar <Bram@vim.org>
parents:
29340
diff
changeset
|
189 keydown generate a keydown event |
339fe2968690
patch 9.0.0058: Win32: cannot test low level events
Bram Moolenaar <Bram@vim.org>
parents:
29340
diff
changeset
|
190 keycode: Keycode to use for a keyup or a keydown event. |
29533 | 191 *E1291* |
29432
339fe2968690
patch 9.0.0058: Win32: cannot test low level events
Bram Moolenaar <Bram@vim.org>
parents:
29340
diff
changeset
|
192 |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
193 "tabline": |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
194 Inject a mouse click event on the tabline to select a |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
195 tabpage. The supported items in {args} are: |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
196 tabnr: tab page number |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
197 |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
198 "tabmenu": |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
199 Inject an event to select a tabline menu entry. The |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
200 supported items in {args} are: |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
201 tabnr: tab page number |
32004 | 202 item: tab page menu item number. 1 for the first |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
203 menu item, 2 for the second item and so on. |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
204 |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
205 After injecting the GUI events you probably should call |
24982
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24387
diff
changeset
|
206 |feedkeys()| to have them processed, e.g.: > |
4cb423b9250d
patch 8.2.3028: GUI mouse events not tested
Bram Moolenaar <Bram@vim.org>
parents:
24387
diff
changeset
|
207 call feedkeys("y", 'Lx!') |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
208 < |
27400
722db0819111
patch 8.2.4228: no tests for clicking in the GUI tabline
Bram Moolenaar <Bram@vim.org>
parents:
27321
diff
changeset
|
209 Returns TRUE if the event is successfully added, FALSE if |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
210 there is a failure. |
27400
722db0819111
patch 8.2.4228: no tests for clicking in the GUI tabline
Bram Moolenaar <Bram@vim.org>
parents:
27321
diff
changeset
|
211 |
27462
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
212 Can also be used as a |method|: > |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
213 GetEvent()->test_gui_event({args}) |
b43f6c879d52
patch 8.2.4259: number of test functions for GUI events is growing
Bram Moolenaar <Bram@vim.org>
parents:
27459
diff
changeset
|
214 < |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
215 test_ignore_error({expr}) *test_ignore_error()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
216 Ignore any error containing {expr}. A normal message is given |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
217 instead. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
218 This is only meant to be used in tests, where catching the |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
219 error with try/catch cannot be used (because it skips over |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
220 following code). |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
221 {expr} is used literally, not as a pattern. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
222 When the {expr} is the string "RESET" then the list of ignored |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
223 errors is made empty. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
224 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
225 Can also be used as a |method|: > |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
226 GetErrorText()->test_ignore_error() |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
227 |
31885 | 228 |
31503
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
229 test_mswin_event({event}, {args}) *test_mswin_event()* |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
230 Generate a low-level MS-Windows {event} with arguments {args} |
31885 | 231 for testing Vim functionality. It works for MS-Windows GUI |
31503
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
232 and for the console. |
31885 | 233 |
31503
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
234 {event} is a String and the supported values are: |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
235 "mouse" mouse event. |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
236 "key" keyboard event. |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
237 |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
238 "mouse": |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
239 Inject either a mouse button click, or a mouse move, event. |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
240 The supported items in {args} are: |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
241 button: mouse button. The supported values are: |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
242 0 right mouse button |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
243 1 middle mouse button |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
244 2 left mouse button |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
245 3 mouse button release |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
246 4 scroll wheel down |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
247 5 scroll wheel up |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
248 6 scroll wheel left |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
249 7 scroll wheel right |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
250 row: mouse click row number. The first row of the |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
251 Vim window is 1 and the last row is 'lines'. |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
252 col: mouse click column number. The maximum value |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
253 of {col} is 'columns'. |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
254 Note: row and col are always interpreted as |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
255 screen cells for the console application. |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
256 But, they may be interpreted as pixels |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
257 for the GUI, depending on "cell". |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
258 multiclick: set to 1 to inject a double-click mouse event. |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
259 modifiers: key modifiers. The supported values are: |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
260 4 shift is pressed |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
261 8 alt is pressed |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
262 16 ctrl is pressed |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
263 move: Optional; if used and TRUE then a mouse move |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
264 event can be generated. |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
265 Only {args} row: and col: are used and |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
266 required. |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
267 Only results in an event when 'mousemoveevent' |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
268 is set or a popup uses mouse move events. |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
269 cell: Optional for the GUI: when present and TRUE |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
270 then "move" uses screen cells instead of pixel |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
271 positions. Not used by the console. |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
272 |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
273 "key": |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
274 Send a low-level keyboard event (e.g. keyup or keydown). |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
275 The supported items in {args} are: |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
276 event: The supported string values are: |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
277 keyup generate a keyup event |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
278 keydown generate a keydown event |
31559
a3dca61f3ba3
patch 9.0.1112: test_mswin_event() can hang
Bram Moolenaar <Bram@vim.org>
parents:
31503
diff
changeset
|
279 keycode: Keycode to use for a keyup or a keydown event. |
31503
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
280 modifiers: Optional; key modifiers. |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
281 The supported values are: |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
282 2 shift is pressed |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
283 4 ctrl is pressed |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
284 8 alt is pressed |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
285 Note: These values are different from the |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
286 mouse modifiers. |
31559
a3dca61f3ba3
patch 9.0.1112: test_mswin_event() can hang
Bram Moolenaar <Bram@vim.org>
parents:
31503
diff
changeset
|
287 execute: Optional. Similar to |feedkeys()| mode x. |
a3dca61f3ba3
patch 9.0.1112: test_mswin_event() can hang
Bram Moolenaar <Bram@vim.org>
parents:
31503
diff
changeset
|
288 When this is included and set to true |
a3dca61f3ba3
patch 9.0.1112: test_mswin_event() can hang
Bram Moolenaar <Bram@vim.org>
parents:
31503
diff
changeset
|
289 (non-zero) then Vim will process any buffered |
a3dca61f3ba3
patch 9.0.1112: test_mswin_event() can hang
Bram Moolenaar <Bram@vim.org>
parents:
31503
diff
changeset
|
290 unprocessed key events. All other {args} |
a3dca61f3ba3
patch 9.0.1112: test_mswin_event() can hang
Bram Moolenaar <Bram@vim.org>
parents:
31503
diff
changeset
|
291 items are optional when this is set and true. |
a3dca61f3ba3
patch 9.0.1112: test_mswin_event() can hang
Bram Moolenaar <Bram@vim.org>
parents:
31503
diff
changeset
|
292 |
a3dca61f3ba3
patch 9.0.1112: test_mswin_event() can hang
Bram Moolenaar <Bram@vim.org>
parents:
31503
diff
changeset
|
293 Returns TRUE if the event is successfully added or executed, |
a3dca61f3ba3
patch 9.0.1112: test_mswin_event() can hang
Bram Moolenaar <Bram@vim.org>
parents:
31503
diff
changeset
|
294 FALSE if there is a failure. |
31503
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
295 |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
296 Can also be used as a |method|: > |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
297 GetEvent()->test_mswin_event({args}) |
b9a4699d6a35
patch 9.0.1084: code handling low level MS-Windows events cannot be tested
Bram Moolenaar <Bram@vim.org>
parents:
31383
diff
changeset
|
298 < |
25700 | 299 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
300 test_null_blob() *test_null_blob()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
301 Return a |Blob| that is null. Only useful for testing. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
302 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
303 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
304 test_null_channel() *test_null_channel()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
305 Return a |Channel| that is null. Only useful for testing. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
306 {only available when compiled with the +channel feature} |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
307 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
308 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
309 test_null_dict() *test_null_dict()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
310 Return a |Dict| that is null. Only useful for testing. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
311 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
312 |
19874
f92435f0f449
patch 8.2.0493: Vim9: some error messages not tested
Bram Moolenaar <Bram@vim.org>
parents:
19523
diff
changeset
|
313 test_null_function() *test_null_function()* |
19968 | 314 Return a |Funcref| that is null. Only useful for testing. |
19874
f92435f0f449
patch 8.2.0493: Vim9: some error messages not tested
Bram Moolenaar <Bram@vim.org>
parents:
19523
diff
changeset
|
315 |
f92435f0f449
patch 8.2.0493: Vim9: some error messages not tested
Bram Moolenaar <Bram@vim.org>
parents:
19523
diff
changeset
|
316 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
317 test_null_job() *test_null_job()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
318 Return a |Job| that is null. Only useful for testing. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
319 {only available when compiled with the +job feature} |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
320 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
321 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
322 test_null_list() *test_null_list()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
323 Return a |List| that is null. Only useful for testing. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
324 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
325 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
326 test_null_partial() *test_null_partial()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
327 Return a |Partial| that is null. Only useful for testing. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
328 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
329 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
330 test_null_string() *test_null_string()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
331 Return a |String| that is null. Only useful for testing. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
332 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
333 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
334 test_option_not_set({name}) *test_option_not_set()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
335 Reset the flag that indicates option {name} was set. Thus it |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
336 looks like it still has the default value. Use like this: > |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
337 set ambiwidth=double |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
338 call test_option_not_set('ambiwidth') |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
339 < Now the 'ambiwidth' option behaves like it was never changed, |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
340 even though the value is "double". |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
341 Only to be used for testing! |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
342 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
343 Can also be used as a |method|: > |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
344 GetOptionName()->test_option_not_set() |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
345 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
346 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
347 test_override({name}, {val}) *test_override()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
348 Overrides certain parts of Vim's internal processing to be able |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
349 to run tests. Only to be used for testing Vim! |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
350 The override is enabled when {val} is non-zero and removed |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
351 when {val} is zero. |
27116
5b267700e6ab
patch 8.2.4087: cannot test items from an autoload script easily
Bram Moolenaar <Bram@vim.org>
parents:
26591
diff
changeset
|
352 Current supported values for {name} are: |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
353 |
27116
5b267700e6ab
patch 8.2.4087: cannot test items from an autoload script easily
Bram Moolenaar <Bram@vim.org>
parents:
26591
diff
changeset
|
354 {name} effect when {val} is non-zero ~ |
29340
fba9e366ced4
patch 9.0.0013: reproducing memory access errors can be difficult
Bram Moolenaar <Bram@vim.org>
parents:
29314
diff
changeset
|
355 alloc_lines make a copy of every buffer line into allocated |
fba9e366ced4
patch 9.0.0013: reproducing memory access errors can be difficult
Bram Moolenaar <Bram@vim.org>
parents:
29314
diff
changeset
|
356 memory, so that memory access errors can be found |
fba9e366ced4
patch 9.0.0013: reproducing memory access errors can be difficult
Bram Moolenaar <Bram@vim.org>
parents:
29314
diff
changeset
|
357 by valgrind |
27116
5b267700e6ab
patch 8.2.4087: cannot test items from an autoload script easily
Bram Moolenaar <Bram@vim.org>
parents:
26591
diff
changeset
|
358 autoload `import autoload` will load the script right |
5b267700e6ab
patch 8.2.4087: cannot test items from an autoload script easily
Bram Moolenaar <Bram@vim.org>
parents:
26591
diff
changeset
|
359 away, not postponed until an item is used |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
360 char_avail disable the char_avail() function |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
361 nfa_fail makes the NFA regexp engine fail to force a |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
362 fallback to the old engine |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
363 no_query_mouse do not query the mouse position for "dec" |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
364 terminals |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
365 no_wait_return set the "no_wait_return" flag. Not restored |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
366 with "ALL". |
27116
5b267700e6ab
patch 8.2.4087: cannot test items from an autoload script easily
Bram Moolenaar <Bram@vim.org>
parents:
26591
diff
changeset
|
367 redraw disable the redrawing() function |
5b267700e6ab
patch 8.2.4087: cannot test items from an autoload script easily
Bram Moolenaar <Bram@vim.org>
parents:
26591
diff
changeset
|
368 redraw_flag ignore the RedrawingDisabled flag |
5b267700e6ab
patch 8.2.4087: cannot test items from an autoload script easily
Bram Moolenaar <Bram@vim.org>
parents:
26591
diff
changeset
|
369 starting reset the "starting" variable, see below |
5b267700e6ab
patch 8.2.4087: cannot test items from an autoload script easily
Bram Moolenaar <Bram@vim.org>
parents:
26591
diff
changeset
|
370 term_props reset all terminal properties when the version |
5b267700e6ab
patch 8.2.4087: cannot test items from an autoload script easily
Bram Moolenaar <Bram@vim.org>
parents:
26591
diff
changeset
|
371 string is detected |
20861
1725bb56178a
patch 8.2.0982: insufficient testing for reading/writing files
Bram Moolenaar <Bram@vim.org>
parents:
20856
diff
changeset
|
372 ui_delay time in msec to use in ui_delay(); overrules a |
1725bb56178a
patch 8.2.0982: insufficient testing for reading/writing files
Bram Moolenaar <Bram@vim.org>
parents:
20856
diff
changeset
|
373 wait time of up to 3 seconds for messages |
32452
c1f730c2b51e
patch 9.0.1557: test failures for unreachable code
Bram Moolenaar <Bram@vim.org>
parents:
32449
diff
changeset
|
374 unreachable no error for code after `:throw` and `:return` |
32004 | 375 uptime overrules sysinfo.uptime |
27257
68c33419fdc6
patch 8.2.4157: terminal test fails because Windows sets the title
Bram Moolenaar <Bram@vim.org>
parents:
27162
diff
changeset
|
376 vterm_title setting the window title by a job running in a |
68c33419fdc6
patch 8.2.4157: terminal test fails because Windows sets the title
Bram Moolenaar <Bram@vim.org>
parents:
27162
diff
changeset
|
377 terminal window |
29340
fba9e366ced4
patch 9.0.0013: reproducing memory access errors can be difficult
Bram Moolenaar <Bram@vim.org>
parents:
29314
diff
changeset
|
378 ALL clear all overrides, except alloc_lines ({val} is |
fba9e366ced4
patch 9.0.0013: reproducing memory access errors can be difficult
Bram Moolenaar <Bram@vim.org>
parents:
29314
diff
changeset
|
379 not used) |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
380 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
381 "starting" is to be used when a test should behave like |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
382 startup was done. Since the tests are run by sourcing a |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
383 script the "starting" variable is non-zero. This is usually a |
32452
c1f730c2b51e
patch 9.0.1557: test failures for unreachable code
Bram Moolenaar <Bram@vim.org>
parents:
32449
diff
changeset
|
384 good thing (tests run faster), but sometimes this changes |
c1f730c2b51e
patch 9.0.1557: test failures for unreachable code
Bram Moolenaar <Bram@vim.org>
parents:
32449
diff
changeset
|
385 behavior in a way that the test doesn't work properly. |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
386 When using: > |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
387 call test_override('starting', 1) |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
388 < The value of "starting" is saved. It is restored by: > |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
389 call test_override('starting', 0) |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
390 |
32452
c1f730c2b51e
patch 9.0.1557: test failures for unreachable code
Bram Moolenaar <Bram@vim.org>
parents:
32449
diff
changeset
|
391 < To make sure the flag is reset later using `:defer` can be |
c1f730c2b51e
patch 9.0.1557: test failures for unreachable code
Bram Moolenaar <Bram@vim.org>
parents:
32449
diff
changeset
|
392 useful: > |
c1f730c2b51e
patch 9.0.1557: test failures for unreachable code
Bram Moolenaar <Bram@vim.org>
parents:
32449
diff
changeset
|
393 call test_override('unreachable', 1) |
c1f730c2b51e
patch 9.0.1557: test failures for unreachable code
Bram Moolenaar <Bram@vim.org>
parents:
32449
diff
changeset
|
394 defer call test_override('unreachable', 0) |
c1f730c2b51e
patch 9.0.1557: test failures for unreachable code
Bram Moolenaar <Bram@vim.org>
parents:
32449
diff
changeset
|
395 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
396 < Can also be used as a |method|: > |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
397 GetOverrideVal()-> test_override('starting') |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
398 |
25700 | 399 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
400 test_refcount({expr}) *test_refcount()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
401 Return the reference count of {expr}. When {expr} is of a |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
402 type that does not have a reference count, returns -1. Only |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
403 to be used for testing. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
404 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
405 Can also be used as a |method|: > |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
406 GetVarname()->test_refcount() |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
407 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
408 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
409 test_setmouse({row}, {col}) *test_setmouse()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
410 Set the mouse position to be used for the next mouse action. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
411 {row} and {col} are one based. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
412 For example: > |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
413 call test_setmouse(4, 20) |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
414 call feedkeys("\<LeftMouse>", "xt") |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
415 |
25700 | 416 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
417 test_settime({expr}) *test_settime()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
418 Set the time Vim uses internally. Currently only used for |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
419 timestamps in the history, as they are used in viminfo, and |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
420 for undo. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
421 Using a value of 1 makes Vim not sleep after a warning or |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
422 error message. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
423 {expr} must evaluate to a number. When the value is zero the |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
424 normal behavior is restored. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
425 |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
426 Can also be used as a |method|: > |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
427 GetTime()->test_settime() |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17909
diff
changeset
|
428 |
25700 | 429 |
19350
76cb39bf1871
patch 8.2.0233: crash when using garbagecollect() in between rand()
Bram Moolenaar <Bram@vim.org>
parents:
19308
diff
changeset
|
430 test_srand_seed([seed]) *test_srand_seed()* |
76cb39bf1871
patch 8.2.0233: crash when using garbagecollect() in between rand()
Bram Moolenaar <Bram@vim.org>
parents:
19308
diff
changeset
|
431 When [seed] is given this sets the seed value used by |
76cb39bf1871
patch 8.2.0233: crash when using garbagecollect() in between rand()
Bram Moolenaar <Bram@vim.org>
parents:
19308
diff
changeset
|
432 `srand()`. When omitted the test seed is removed. |
76cb39bf1871
patch 8.2.0233: crash when using garbagecollect() in between rand()
Bram Moolenaar <Bram@vim.org>
parents:
19308
diff
changeset
|
433 |
25700 | 434 |
435 test_unknown() *test_unknown()* | |
436 Return a value with unknown type. Only useful for testing. | |
437 | |
438 | |
439 test_void() *test_void()* | |
440 Return a value with void type. Only useful for testing. | |
441 | |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
442 ============================================================================== |
17571 | 443 3. Assert functions *assert-functions-details* |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
444 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
445 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
446 assert_beeps({cmd}) *assert_beeps()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
447 Run {cmd} and add an error message to |v:errors| if it does |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
448 NOT produce a beep or visual bell. |
24307
55f458d35292
patch 8.2.2694: when 'matchpairs' is empty every character beeps
Bram Moolenaar <Bram@vim.org>
parents:
24103
diff
changeset
|
449 Also see |assert_fails()|, |assert_nobeep()| and |
55f458d35292
patch 8.2.2694: when 'matchpairs' is empty every character beeps
Bram Moolenaar <Bram@vim.org>
parents:
24103
diff
changeset
|
450 |assert-return|. |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
451 |
17728
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
452 Can also be used as a |method|: > |
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
453 GetCmd()->assert_beeps() |
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
454 < |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
455 *assert_equal()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
456 assert_equal({expected}, {actual} [, {msg}]) |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
457 When {expected} and {actual} are not equal an error message is |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
458 added to |v:errors| and 1 is returned. Otherwise zero is |
32449 | 459 returned. |assert-return| |
460 The error is in the form "Expected {expected} but got | |
461 {actual}". When {msg} is present it is prefixed to that. | |
462 | |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
463 There is no automatic conversion, the String "4" is different |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
464 from the Number 4. And the number 4 is different from the |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
465 Float 4.0. The value of 'ignorecase' is not used here, case |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
466 always matters. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
467 Example: > |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
468 assert_equal('foo', 'bar') |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
469 < Will result in a string to be added to |v:errors|: |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
470 test.vim line 12: Expected 'foo' but got 'bar' ~ |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
471 |
21250 | 472 Can also be used as a |method|, the base is passed as the |
473 second argument: > | |
17620
072efa9ca875
patch 8.1.1807: more functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17571
diff
changeset
|
474 mylist->assert_equal([1, 2, 3]) |
072efa9ca875
patch 8.1.1807: more functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17571
diff
changeset
|
475 |
072efa9ca875
patch 8.1.1807: more functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17571
diff
changeset
|
476 < *assert_equalfile()* |
20679
1af1d8ff2aa8
patch 8.2.0893: assert_equalfile() does not take a third argument
Bram Moolenaar <Bram@vim.org>
parents:
19968
diff
changeset
|
477 assert_equalfile({fname-one}, {fname-two} [, {msg}]) |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
478 When the files {fname-one} and {fname-two} do not contain |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
479 exactly the same text an error message is added to |v:errors|. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
480 Also see |assert-return|. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
481 When {fname-one} or {fname-two} does not exist the error will |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
482 mention that. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
483 Mainly useful with |terminal-diff|. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
484 |
17825
ce993ba17adb
patch 8.1.1909: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17758
diff
changeset
|
485 Can also be used as a |method|: > |
ce993ba17adb
patch 8.1.1909: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17758
diff
changeset
|
486 GetLog()->assert_equalfile('expected.log') |
ce993ba17adb
patch 8.1.1909: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17758
diff
changeset
|
487 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
488 assert_exception({error} [, {msg}]) *assert_exception()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
489 When v:exception does not contain the string {error} an error |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
490 message is added to |v:errors|. Also see |assert-return|. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
491 This can be used to assert that a command throws an exception. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
492 Using the error number, followed by a colon, avoids problems |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
493 with translations: > |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
494 try |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
495 commandthatfails |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
496 call assert_false(1, 'command should have failed') |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
497 catch |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
498 call assert_exception('E492:') |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
499 endtry |
21859
3e5d0832a2e7
patch 8.2.1479: Vim9: error for list index uses wrong line number
Bram Moolenaar <Bram@vim.org>
parents:
21779
diff
changeset
|
500 < |
3e5d0832a2e7
patch 8.2.1479: Vim9: error for list index uses wrong line number
Bram Moolenaar <Bram@vim.org>
parents:
21779
diff
changeset
|
501 *assert_fails()* |
22163
b6d36f0b4f03
patch 8.2.1631: test_fails() does not check the context of the line number
Bram Moolenaar <Bram@vim.org>
parents:
21991
diff
changeset
|
502 assert_fails({cmd} [, {error} [, {msg} [, {lnum} [, {context}]]]]) |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
503 Run {cmd} and add an error message to |v:errors| if it does |
21265
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
504 NOT produce an error or when {error} is not found in the |
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
505 error message. Also see |assert-return|. |
27321 | 506 *E856* |
21265
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
507 When {error} is a string it must be found literally in the |
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
508 first reported error. Most often this will be the error code, |
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
509 including the colon, e.g. "E123:". > |
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
510 assert_fails('bad cmd', 'E987:') |
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
511 < |
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
512 When {error} is a |List| with one or two strings, these are |
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
513 used as patterns. The first pattern is matched against the |
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
514 first reported error: > |
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
515 assert_fails('cmd', ['E987:.*expected bool']) |
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
516 < The second pattern, if present, is matched against the last |
23305 | 517 reported error. |
518 If there is only one error then both patterns must match. This | |
519 can be used to check that there is only one error. | |
520 To only match the last error use an empty string for the first | |
521 error: > | |
21265
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
522 assert_fails('cmd', ['', 'E987:']) |
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21250
diff
changeset
|
523 < |
21859
3e5d0832a2e7
patch 8.2.1479: Vim9: error for list index uses wrong line number
Bram Moolenaar <Bram@vim.org>
parents:
21779
diff
changeset
|
524 If {msg} is empty then it is not used. Do this to get the |
3e5d0832a2e7
patch 8.2.1479: Vim9: error for list index uses wrong line number
Bram Moolenaar <Bram@vim.org>
parents:
21779
diff
changeset
|
525 default message when passing the {lnum} argument. |
27459 | 526 *E1115* |
21859
3e5d0832a2e7
patch 8.2.1479: Vim9: error for list index uses wrong line number
Bram Moolenaar <Bram@vim.org>
parents:
21779
diff
changeset
|
527 When {lnum} is present and not negative, and the {error} |
3e5d0832a2e7
patch 8.2.1479: Vim9: error for list index uses wrong line number
Bram Moolenaar <Bram@vim.org>
parents:
21779
diff
changeset
|
528 argument is present and matches, then this is compared with |
3e5d0832a2e7
patch 8.2.1479: Vim9: error for list index uses wrong line number
Bram Moolenaar <Bram@vim.org>
parents:
21779
diff
changeset
|
529 the line number at which the error was reported. That can be |
3e5d0832a2e7
patch 8.2.1479: Vim9: error for list index uses wrong line number
Bram Moolenaar <Bram@vim.org>
parents:
21779
diff
changeset
|
530 the line number in a function or in a script. |
27459 | 531 *E1116* |
22163
b6d36f0b4f03
patch 8.2.1631: test_fails() does not check the context of the line number
Bram Moolenaar <Bram@vim.org>
parents:
21991
diff
changeset
|
532 When {context} is present it is used as a pattern and matched |
b6d36f0b4f03
patch 8.2.1631: test_fails() does not check the context of the line number
Bram Moolenaar <Bram@vim.org>
parents:
21991
diff
changeset
|
533 against the context (script name or function name) where |
b6d36f0b4f03
patch 8.2.1631: test_fails() does not check the context of the line number
Bram Moolenaar <Bram@vim.org>
parents:
21991
diff
changeset
|
534 {lnum} is located in. |
b6d36f0b4f03
patch 8.2.1631: test_fails() does not check the context of the line number
Bram Moolenaar <Bram@vim.org>
parents:
21991
diff
changeset
|
535 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
536 Note that beeping is not considered an error, and some failing |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
537 commands only beep. Use |assert_beeps()| for those. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
538 |
17728
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
539 Can also be used as a |method|: > |
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
540 GetCmd()->assert_fails('E99:') |
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
541 |
21859
3e5d0832a2e7
patch 8.2.1479: Vim9: error for list index uses wrong line number
Bram Moolenaar <Bram@vim.org>
parents:
21779
diff
changeset
|
542 assert_false({actual} [, {msg}]) *assert_false()* |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
543 When {actual} is not false an error message is added to |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
544 |v:errors|, like with |assert_equal()|. |
32449 | 545 The error is in the form "Expected False but got {actual}". |
546 When {msg} is present it is prepended to that. | |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
547 Also see |assert-return|. |
32449 | 548 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
549 A value is false when it is zero. When {actual} is not a |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
550 number the assert fails. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
551 |
17728
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
552 Can also be used as a |method|: > |
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
553 GetResult()->assert_false() |
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
554 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
555 assert_inrange({lower}, {upper}, {actual} [, {msg}]) *assert_inrange()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
556 This asserts number and |Float| values. When {actual} is lower |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
557 than {lower} or higher than {upper} an error message is added |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
558 to |v:errors|. Also see |assert-return|. |
32449 | 559 The error is in the form "Expected range {lower} - {upper}, |
560 but got {actual}". When {msg} is present it is prefixed to | |
561 that. | |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
562 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
563 *assert_match()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
564 assert_match({pattern}, {actual} [, {msg}]) |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
565 When {pattern} does not match {actual} an error message is |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
566 added to |v:errors|. Also see |assert-return|. |
32449 | 567 The error is in the form "Pattern {pattern} does not match |
568 {actual}". When {msg} is present it is prefixed to that. | |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
569 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
570 {pattern} is used as with |=~|: The matching is always done |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
571 like 'magic' was set and 'cpoptions' is empty, no matter what |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
572 the actual value of 'magic' or 'cpoptions' is. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
573 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
574 {actual} is used as a string, automatic conversion applies. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
575 Use "^" and "$" to match with the start and end of the text. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
576 Use both to match the whole text. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
577 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
578 Example: > |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
579 assert_match('^f.*o$', 'foobar') |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
580 < Will result in a string to be added to |v:errors|: |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
581 test.vim line 12: Pattern '^f.*o$' does not match 'foobar' ~ |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
582 |
17728
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
583 Can also be used as a |method|: > |
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
584 getFile()->assert_match('foo.*') |
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
585 < |
24307
55f458d35292
patch 8.2.2694: when 'matchpairs' is empty every character beeps
Bram Moolenaar <Bram@vim.org>
parents:
24103
diff
changeset
|
586 assert_nobeep({cmd}) *assert_nobeep()* |
55f458d35292
patch 8.2.2694: when 'matchpairs' is empty every character beeps
Bram Moolenaar <Bram@vim.org>
parents:
24103
diff
changeset
|
587 Run {cmd} and add an error message to |v:errors| if it |
55f458d35292
patch 8.2.2694: when 'matchpairs' is empty every character beeps
Bram Moolenaar <Bram@vim.org>
parents:
24103
diff
changeset
|
588 produces a beep or visual bell. |
55f458d35292
patch 8.2.2694: when 'matchpairs' is empty every character beeps
Bram Moolenaar <Bram@vim.org>
parents:
24103
diff
changeset
|
589 Also see |assert_beeps()|. |
55f458d35292
patch 8.2.2694: when 'matchpairs' is empty every character beeps
Bram Moolenaar <Bram@vim.org>
parents:
24103
diff
changeset
|
590 |
55f458d35292
patch 8.2.2694: when 'matchpairs' is empty every character beeps
Bram Moolenaar <Bram@vim.org>
parents:
24103
diff
changeset
|
591 Can also be used as a |method|: > |
55f458d35292
patch 8.2.2694: when 'matchpairs' is empty every character beeps
Bram Moolenaar <Bram@vim.org>
parents:
24103
diff
changeset
|
592 GetCmd()->assert_nobeep() |
55f458d35292
patch 8.2.2694: when 'matchpairs' is empty every character beeps
Bram Moolenaar <Bram@vim.org>
parents:
24103
diff
changeset
|
593 < |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
594 *assert_notequal()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
595 assert_notequal({expected}, {actual} [, {msg}]) |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
596 The opposite of `assert_equal()`: add an error message to |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
597 |v:errors| when {expected} and {actual} are equal. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
598 Also see |assert-return|. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
599 |
17620
072efa9ca875
patch 8.1.1807: more functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17571
diff
changeset
|
600 Can also be used as a |method|: > |
072efa9ca875
patch 8.1.1807: more functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17571
diff
changeset
|
601 mylist->assert_notequal([1, 2, 3]) |
072efa9ca875
patch 8.1.1807: more functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17571
diff
changeset
|
602 |
072efa9ca875
patch 8.1.1807: more functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17571
diff
changeset
|
603 < *assert_notmatch()* |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
604 assert_notmatch({pattern}, {actual} [, {msg}]) |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
605 The opposite of `assert_match()`: add an error message to |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
606 |v:errors| when {pattern} matches {actual}. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
607 Also see |assert-return|. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
608 |
17728
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
609 Can also be used as a |method|: > |
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
610 getFile()->assert_notmatch('bar.*') |
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
611 |
17825
ce993ba17adb
patch 8.1.1909: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17758
diff
changeset
|
612 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
613 assert_report({msg}) *assert_report()* |
25619 | 614 Report a test failure directly, using String {msg}. |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
615 Always returns one. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
616 |
17825
ce993ba17adb
patch 8.1.1909: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17758
diff
changeset
|
617 Can also be used as a |method|: > |
ce993ba17adb
patch 8.1.1909: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17758
diff
changeset
|
618 GetMessage()->assert_report() |
ce993ba17adb
patch 8.1.1909: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17758
diff
changeset
|
619 |
ce993ba17adb
patch 8.1.1909: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17758
diff
changeset
|
620 |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
621 assert_true({actual} [, {msg}]) *assert_true()* |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
622 When {actual} is not true an error message is added to |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
623 |v:errors|, like with |assert_equal()|. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
624 Also see |assert-return|. |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
625 A value is TRUE when it is a non-zero number. When {actual} |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
626 is not a number the assert fails. |
32449 | 627 When {msg} is given it precedes the default message. |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
628 |
17728
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
629 Can also be used as a |method|: > |
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
630 GetResult()->assert_true() |
68ea27d26d5b
patch 8.1.1861: only some assert functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17620
diff
changeset
|
631 < |
17456
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
632 |
e414281d8bb4
patch 8.1.1726: the eval.txt help file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
633 vim:tw=78:ts=8:noet:ft=help:norl: |