Mercurial > vim
annotate src/testdir/test_vim9_builtin.vim @ 27402:898f520e798b v8.2.4229
patch 8.2.4229: possible crash when invoking timer callback fails
Commit: https://github.com/vim/vim/commit/745b938a48104778dcb7b0245e6589b54cb93593
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Jan 27 13:55:35 2022 +0000
patch 8.2.4229: possible crash when invoking timer callback fails
Problem: Possible crash when invoking timer callback fails.
Solution: Initialize the typval. Give an error for an empty callback.
(closes #9636)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 27 Jan 2022 15:00:06 +0100 |
parents | ec2ba9acec1b |
children | 4c1bdee75bed |
rev | line source |
---|---|
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1 " Test using builtin functions in the Vim9 script language. |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3 source check.vim |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4 source vim9.vim |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
5 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
6 " Test for passing too many or too few arguments to builtin functions |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
7 func Test_internalfunc_arg_error() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
8 let l =<< trim END |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
9 def! FArgErr(): float |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
10 return ceil(1.1, 2) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
11 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
12 defcompile |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
13 END |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
14 call writefile(l, 'Xinvalidarg') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
15 call assert_fails('so Xinvalidarg', 'E118:', '', 1, 'FArgErr') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
16 let l =<< trim END |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
17 def! FArgErr(): float |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
18 return ceil() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
19 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
20 defcompile |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
21 END |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
22 call writefile(l, 'Xinvalidarg') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
23 call assert_fails('so Xinvalidarg', 'E119:', '', 1, 'FArgErr') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
24 call delete('Xinvalidarg') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
25 endfunc |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
26 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
27 " Test for builtin functions returning different types |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
28 func Test_InternalFuncRetType() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
29 let lines =<< trim END |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
30 def RetFloat(): float |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
31 return ceil(1.456) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
32 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
33 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
34 def RetListAny(): list<any> |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
35 return items({k: 'v'}) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
36 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
37 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
38 def RetListString(): list<string> |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
39 return split('a:b:c', ':') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
40 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
41 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
42 def RetListDictAny(): list<dict<any>> |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
43 return getbufinfo() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
44 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
45 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
46 def RetDictNumber(): dict<number> |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
47 return wordcount() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
48 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
49 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
50 def RetDictString(): dict<string> |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
51 return environ() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
52 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
53 END |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
54 call writefile(lines, 'Xscript') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
55 source Xscript |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
56 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
57 call RetFloat()->assert_equal(2.0) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
58 call RetListAny()->assert_equal([['k', 'v']]) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
59 call RetListString()->assert_equal(['a', 'b', 'c']) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
60 call RetListDictAny()->assert_notequal([]) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
61 call RetDictNumber()->assert_notequal({}) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
62 call RetDictString()->assert_notequal({}) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
63 call delete('Xscript') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
64 endfunc |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
65 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
66 def Test_abs() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
67 assert_equal(0, abs(0)) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
68 assert_equal(2, abs(-2)) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
69 assert_equal(3, abs(3)) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
70 CheckDefAndScriptFailure(['abs("text")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
71 if has('float') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
72 assert_equal(0, abs(0)) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
73 assert_equal(2.0, abs(-2.0)) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
74 assert_equal(3.0, abs(3.0)) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
75 endif |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
76 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
77 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
78 def Test_add() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
79 CheckDefAndScriptFailure(['add({}, 1)'], ['E1013: Argument 1: type mismatch, expected list<any> but got dict<unknown>', 'E1226: List or Blob required for argument 1']) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
80 CheckDefFailure(['add([1], "a")'], 'E1012: Type mismatch; expected number but got string') |
26891
902b8bee5254
patch 8.2.3974: Vim9: LISTAPPEND instruction does not check for a locked list
Bram Moolenaar <Bram@vim.org>
parents:
26782
diff
changeset
|
81 |
902b8bee5254
patch 8.2.3974: Vim9: LISTAPPEND instruction does not check for a locked list
Bram Moolenaar <Bram@vim.org>
parents:
26782
diff
changeset
|
82 var lines =<< trim END |
902b8bee5254
patch 8.2.3974: Vim9: LISTAPPEND instruction does not check for a locked list
Bram Moolenaar <Bram@vim.org>
parents:
26782
diff
changeset
|
83 vim9script |
902b8bee5254
patch 8.2.3974: Vim9: LISTAPPEND instruction does not check for a locked list
Bram Moolenaar <Bram@vim.org>
parents:
26782
diff
changeset
|
84 g:thelist = [1] |
902b8bee5254
patch 8.2.3974: Vim9: LISTAPPEND instruction does not check for a locked list
Bram Moolenaar <Bram@vim.org>
parents:
26782
diff
changeset
|
85 lockvar g:thelist |
902b8bee5254
patch 8.2.3974: Vim9: LISTAPPEND instruction does not check for a locked list
Bram Moolenaar <Bram@vim.org>
parents:
26782
diff
changeset
|
86 def TryChange() |
902b8bee5254
patch 8.2.3974: Vim9: LISTAPPEND instruction does not check for a locked list
Bram Moolenaar <Bram@vim.org>
parents:
26782
diff
changeset
|
87 g:thelist->add(2) |
902b8bee5254
patch 8.2.3974: Vim9: LISTAPPEND instruction does not check for a locked list
Bram Moolenaar <Bram@vim.org>
parents:
26782
diff
changeset
|
88 enddef |
902b8bee5254
patch 8.2.3974: Vim9: LISTAPPEND instruction does not check for a locked list
Bram Moolenaar <Bram@vim.org>
parents:
26782
diff
changeset
|
89 TryChange() |
902b8bee5254
patch 8.2.3974: Vim9: LISTAPPEND instruction does not check for a locked list
Bram Moolenaar <Bram@vim.org>
parents:
26782
diff
changeset
|
90 END |
902b8bee5254
patch 8.2.3974: Vim9: LISTAPPEND instruction does not check for a locked list
Bram Moolenaar <Bram@vim.org>
parents:
26782
diff
changeset
|
91 CheckScriptFailure(lines, 'E741:') |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
92 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
93 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
94 def Test_add_blob() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
95 var b1: blob = 0z12 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
96 add(b1, 0x34) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
97 assert_equal(0z1234, b1) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
98 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
99 var b2: blob # defaults to empty blob |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
100 add(b2, 0x67) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
101 assert_equal(0z67, b2) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
102 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
103 var lines =<< trim END |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
104 var b: blob |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
105 add(b, "x") |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
106 END |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
107 CheckDefFailure(lines, 'E1012:', 2) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
108 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
109 lines =<< trim END |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
110 add(test_null_blob(), 123) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
111 END |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
112 CheckDefExecAndScriptFailure(lines, 'E1131:', 1) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
113 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
114 lines =<< trim END |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
115 var b: blob = test_null_blob() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
116 add(b, 123) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
117 END |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
118 CheckDefExecFailure(lines, 'E1131:', 2) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
119 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
120 # Getting variable with NULL blob allocates a new blob at script level |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
121 lines =<< trim END |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
122 vim9script |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
123 var b: blob = test_null_blob() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
124 add(b, 123) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
125 END |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
126 CheckScriptSuccess(lines) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
127 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
128 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
129 def Test_add_list() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
130 var l: list<number> # defaults to empty list |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
131 add(l, 9) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
132 assert_equal([9], l) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
133 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
134 var lines =<< trim END |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
135 var l: list<number> |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
136 add(l, "x") |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
137 END |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
138 CheckDefFailure(lines, 'E1012:', 2) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
139 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
140 lines =<< trim END |
24482
3d5a66e478f8
patch 8.2.2781: add() silently skips when adding to null list or blob
Bram Moolenaar <Bram@vim.org>
parents:
24414
diff
changeset
|
141 add(test_null_list(), 123) |
3d5a66e478f8
patch 8.2.2781: add() silently skips when adding to null list or blob
Bram Moolenaar <Bram@vim.org>
parents:
24414
diff
changeset
|
142 END |
3d5a66e478f8
patch 8.2.2781: add() silently skips when adding to null list or blob
Bram Moolenaar <Bram@vim.org>
parents:
24414
diff
changeset
|
143 CheckDefExecAndScriptFailure(lines, 'E1130:', 1) |
3d5a66e478f8
patch 8.2.2781: add() silently skips when adding to null list or blob
Bram Moolenaar <Bram@vim.org>
parents:
24414
diff
changeset
|
144 |
3d5a66e478f8
patch 8.2.2781: add() silently skips when adding to null list or blob
Bram Moolenaar <Bram@vim.org>
parents:
24414
diff
changeset
|
145 lines =<< trim END |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
146 var l: list<number> = test_null_list() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
147 add(l, 123) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
148 END |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
149 CheckDefExecFailure(lines, 'E1130:', 2) |
24482
3d5a66e478f8
patch 8.2.2781: add() silently skips when adding to null list or blob
Bram Moolenaar <Bram@vim.org>
parents:
24414
diff
changeset
|
150 |
3d5a66e478f8
patch 8.2.2781: add() silently skips when adding to null list or blob
Bram Moolenaar <Bram@vim.org>
parents:
24414
diff
changeset
|
151 # Getting variable with NULL list allocates a new list at script level |
3d5a66e478f8
patch 8.2.2781: add() silently skips when adding to null list or blob
Bram Moolenaar <Bram@vim.org>
parents:
24414
diff
changeset
|
152 lines =<< trim END |
3d5a66e478f8
patch 8.2.2781: add() silently skips when adding to null list or blob
Bram Moolenaar <Bram@vim.org>
parents:
24414
diff
changeset
|
153 vim9script |
3d5a66e478f8
patch 8.2.2781: add() silently skips when adding to null list or blob
Bram Moolenaar <Bram@vim.org>
parents:
24414
diff
changeset
|
154 var l: list<number> = test_null_list() |
3d5a66e478f8
patch 8.2.2781: add() silently skips when adding to null list or blob
Bram Moolenaar <Bram@vim.org>
parents:
24414
diff
changeset
|
155 add(l, 123) |
3d5a66e478f8
patch 8.2.2781: add() silently skips when adding to null list or blob
Bram Moolenaar <Bram@vim.org>
parents:
24414
diff
changeset
|
156 END |
3d5a66e478f8
patch 8.2.2781: add() silently skips when adding to null list or blob
Bram Moolenaar <Bram@vim.org>
parents:
24414
diff
changeset
|
157 CheckScriptSuccess(lines) |
25182
14448e7acdb2
patch 8.2.3127: Vim9: no error when adding number to list of string
Bram Moolenaar <Bram@vim.org>
parents:
25143
diff
changeset
|
158 |
14448e7acdb2
patch 8.2.3127: Vim9: no error when adding number to list of string
Bram Moolenaar <Bram@vim.org>
parents:
25143
diff
changeset
|
159 lines =<< trim END |
14448e7acdb2
patch 8.2.3127: Vim9: no error when adding number to list of string
Bram Moolenaar <Bram@vim.org>
parents:
25143
diff
changeset
|
160 vim9script |
14448e7acdb2
patch 8.2.3127: Vim9: no error when adding number to list of string
Bram Moolenaar <Bram@vim.org>
parents:
25143
diff
changeset
|
161 var l: list<string> = ['a'] |
14448e7acdb2
patch 8.2.3127: Vim9: no error when adding number to list of string
Bram Moolenaar <Bram@vim.org>
parents:
25143
diff
changeset
|
162 l->add(123) |
14448e7acdb2
patch 8.2.3127: Vim9: no error when adding number to list of string
Bram Moolenaar <Bram@vim.org>
parents:
25143
diff
changeset
|
163 END |
14448e7acdb2
patch 8.2.3127: Vim9: no error when adding number to list of string
Bram Moolenaar <Bram@vim.org>
parents:
25143
diff
changeset
|
164 CheckScriptFailure(lines, 'E1012: Type mismatch; expected string but got number', 3) |
25184
e495f40e4b07
patch 8.2.3128: Vim9: uninitialzed list does not get type checked
Bram Moolenaar <Bram@vim.org>
parents:
25182
diff
changeset
|
165 |
e495f40e4b07
patch 8.2.3128: Vim9: uninitialzed list does not get type checked
Bram Moolenaar <Bram@vim.org>
parents:
25182
diff
changeset
|
166 lines =<< trim END |
e495f40e4b07
patch 8.2.3128: Vim9: uninitialzed list does not get type checked
Bram Moolenaar <Bram@vim.org>
parents:
25182
diff
changeset
|
167 vim9script |
e495f40e4b07
patch 8.2.3128: Vim9: uninitialzed list does not get type checked
Bram Moolenaar <Bram@vim.org>
parents:
25182
diff
changeset
|
168 var l: list<string> |
e495f40e4b07
patch 8.2.3128: Vim9: uninitialzed list does not get type checked
Bram Moolenaar <Bram@vim.org>
parents:
25182
diff
changeset
|
169 l->add(123) |
e495f40e4b07
patch 8.2.3128: Vim9: uninitialzed list does not get type checked
Bram Moolenaar <Bram@vim.org>
parents:
25182
diff
changeset
|
170 END |
e495f40e4b07
patch 8.2.3128: Vim9: uninitialzed list does not get type checked
Bram Moolenaar <Bram@vim.org>
parents:
25182
diff
changeset
|
171 CheckScriptFailure(lines, 'E1012: Type mismatch; expected string but got number', 3) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
172 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
173 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
174 def Test_and() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
175 CheckDefAndScriptFailure(['and("x", 0x2)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
176 CheckDefAndScriptFailure(['and(0x1, "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
177 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
178 |
23654
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
179 def Test_append() |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
180 new |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
181 setline(1, range(3)) |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
182 var res1: number = append(1, 'one') |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
183 assert_equal(0, res1) |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
184 var res2: bool = append(3, 'two') |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
185 assert_equal(false, res2) |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
186 assert_equal(['0', 'one', '1', 'two', '2'], getline(1, 6)) |
24258
8b4159943d9a
patch 8.2.2670: Vim9: error for append(0, text)
Bram Moolenaar <Bram@vim.org>
parents:
24254
diff
changeset
|
187 |
8b4159943d9a
patch 8.2.2670: Vim9: error for append(0, text)
Bram Moolenaar <Bram@vim.org>
parents:
24254
diff
changeset
|
188 append(0, 'zero') |
8b4159943d9a
patch 8.2.2670: Vim9: error for append(0, text)
Bram Moolenaar <Bram@vim.org>
parents:
24254
diff
changeset
|
189 assert_equal('zero', getline(1)) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
190 append(0, {a: 10}) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
191 assert_equal("{'a': 10}", getline(1)) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
192 append(0, function('min')) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
193 assert_equal("function('min')", getline(1)) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
194 CheckDefAndScriptFailure(['append([1], "x")'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1220: String or Number required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
195 CheckDefExecAndScriptFailure(['append("", "x")'], 'E1209: Invalid value for a line number') |
26775
2df40c348c70
patch 8.2.3916: no error for passing an invalid line number to append()
Bram Moolenaar <Bram@vim.org>
parents:
26765
diff
changeset
|
196 CheckDefExecAndScriptFailure(['append(".a", "x")'], 'E1209: Invalid value for a line number') |
26782
b7b82279426f
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
Bram Moolenaar <Bram@vim.org>
parents:
26775
diff
changeset
|
197 # only get one error |
b7b82279426f
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
Bram Moolenaar <Bram@vim.org>
parents:
26775
diff
changeset
|
198 assert_fails('append("''aa", "x")', ['E1209: Invalid value for a line number: "''aa"', 'E1209:']) |
26775
2df40c348c70
patch 8.2.3916: no error for passing an invalid line number to append()
Bram Moolenaar <Bram@vim.org>
parents:
26765
diff
changeset
|
199 CheckDefExecAndScriptFailure(['append(-1, "x")'], 'E966: Invalid line number: -1') |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
200 bwipe! |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
201 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
202 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
203 def Test_appendbufline() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
204 new |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
205 var bnum: number = bufnr() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
206 :wincmd w |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
207 appendbufline(bnum, 0, range(3)) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
208 var res1: number = appendbufline(bnum, 1, 'one') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
209 assert_equal(0, res1) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
210 var res2: bool = appendbufline(bnum, 3, 'two') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
211 assert_equal(false, res2) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
212 assert_equal(['0', 'one', '1', 'two', '2', ''], getbufline(bnum, 1, '$')) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
213 appendbufline(bnum, 0, 'zero') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
214 assert_equal(['zero'], getbufline(bnum, 1)) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
215 CheckDefAndScriptFailure(['appendbufline([1], 1, "x")'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
216 CheckDefAndScriptFailure(['appendbufline(1, [1], "x")'], ['E1013: Argument 2: type mismatch, expected string but got list<number>', 'E1220: String or Number required for argument 2']) |
26775
2df40c348c70
patch 8.2.3916: no error for passing an invalid line number to append()
Bram Moolenaar <Bram@vim.org>
parents:
26765
diff
changeset
|
217 CheckDefExecAndScriptFailure(['appendbufline(' .. bnum .. ', -1, "x")'], 'E966: Invalid line number: -1') |
26782
b7b82279426f
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
Bram Moolenaar <Bram@vim.org>
parents:
26775
diff
changeset
|
218 CheckDefExecAndScriptFailure(['appendbufline(' .. bnum .. ', "$a", "x")'], 'E1030: Using a String as a Number: "$a"') |
b7b82279426f
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
Bram Moolenaar <Bram@vim.org>
parents:
26775
diff
changeset
|
219 assert_fails('appendbufline(' .. bnum .. ', "$a", "x")', ['E1030: Using a String as a Number: "$a"', 'E1030:']) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
220 CheckDefAndScriptFailure(['appendbufline(1, 1, {"a": 10})'], ['E1013: Argument 3: type mismatch, expected string but got dict<number>', 'E1224: String, Number or List required for argument 3']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
221 bnum->bufwinid()->win_gotoid() |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
222 appendbufline('', 0, 'numbers') |
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
223 getline(1)->assert_equal('numbers') |
24258
8b4159943d9a
patch 8.2.2670: Vim9: error for append(0, text)
Bram Moolenaar <Bram@vim.org>
parents:
24254
diff
changeset
|
224 bwipe! |
23654
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
225 enddef |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
226 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
227 def Test_argc() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
228 CheckDefAndScriptFailure(['argc("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
229 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
230 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
231 def Test_arglistid() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
232 CheckDefAndScriptFailure(['arglistid("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
233 CheckDefAndScriptFailure(['arglistid(1, "y")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
234 CheckDefAndScriptFailure(['arglistid("x", "y")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
235 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
236 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
237 def Test_argv() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
238 CheckDefAndScriptFailure(['argv("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
239 CheckDefAndScriptFailure(['argv(1, "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
240 CheckDefAndScriptFailure(['argv("x", "y")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
241 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
242 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
243 def Test_assert_beeps() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
244 CheckDefAndScriptFailure(['assert_beeps(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
245 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
246 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
247 def Test_assert_equalfile() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
248 CheckDefAndScriptFailure(['assert_equalfile(1, "f2")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
249 CheckDefAndScriptFailure(['assert_equalfile("f1", true)'], ['E1013: Argument 2: type mismatch, expected string but got bool', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
250 CheckDefAndScriptFailure(['assert_equalfile("f1", "f2", ["a"])'], ['E1013: Argument 3: type mismatch, expected string but got list<string>', 'E1174: String required for argument 3']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
251 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
252 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
253 def Test_assert_exception() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
254 CheckDefAndScriptFailure(['assert_exception({})'], ['E1013: Argument 1: type mismatch, expected string but got dict<unknown>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
255 CheckDefAndScriptFailure(['assert_exception("E1:", v:null)'], ['E1013: Argument 2: type mismatch, expected string but got special', 'E1174: String required for argument 2']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
256 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
257 |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
258 def Test_assert_fails() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
259 CheckDefAndScriptFailure(['assert_fails([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
260 CheckDefAndScriptFailure(['assert_fails("a", true)'], ['E1013: Argument 2: type mismatch, expected string but got bool', 'E1222: String or List required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
261 CheckDefAndScriptFailure(['assert_fails("a", "b", "c", "d")'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
262 CheckDefAndScriptFailure(['assert_fails("a", "b", "c", 4, 5)'], ['E1013: Argument 5: type mismatch, expected string but got number', 'E1174: String required for argument 5']) |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
263 enddef |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
264 |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
265 def Test_assert_inrange() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
266 CheckDefAndScriptFailure(['assert_inrange("a", 2, 3)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
267 CheckDefAndScriptFailure(['assert_inrange(1, "b", 3)'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
268 CheckDefAndScriptFailure(['assert_inrange(1, 2, "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
269 CheckDefAndScriptFailure(['assert_inrange(1, 2, 3, 4)'], ['E1013: Argument 4: type mismatch, expected string but got number', 'E1174: String required for argument 4']) |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
270 enddef |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
271 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
272 def Test_assert_match() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
273 CheckDefAndScriptFailure(['assert_match({}, "b")'], ['E1013: Argument 1: type mismatch, expected string but got dict<unknown>', '']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
274 CheckDefAndScriptFailure(['assert_match("a", 1)'], ['E1013: Argument 2: type mismatch, expected string but got number', '']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
275 CheckDefAndScriptFailure(['assert_match("a", "b", null)'], ['E1013: Argument 3: type mismatch, expected string but got special', '']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
276 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
277 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
278 def Test_assert_nobeep() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
279 CheckDefAndScriptFailure(['assert_nobeep(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
280 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
281 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
282 def Test_assert_notmatch() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
283 CheckDefAndScriptFailure(['assert_notmatch({}, "b")'], ['E1013: Argument 1: type mismatch, expected string but got dict<unknown>', '']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
284 CheckDefAndScriptFailure(['assert_notmatch("a", 1)'], ['E1013: Argument 2: type mismatch, expected string but got number', '']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
285 CheckDefAndScriptFailure(['assert_notmatch("a", "b", null)'], ['E1013: Argument 3: type mismatch, expected string but got special', '']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
286 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
287 |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
288 def Test_assert_report() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
289 CheckDefAndScriptFailure(['assert_report([1, 2])'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1174: String required for argument 1']) |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
290 enddef |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
291 |
24246
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
292 def Test_balloon_show() |
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
293 CheckGui |
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
294 CheckFeature balloon_eval |
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
295 |
25384
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
296 assert_fails('balloon_show(10)', 'E1222:') |
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
297 assert_fails('balloon_show(true)', 'E1222:') |
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
298 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
299 CheckDefAndScriptFailure(['balloon_show(1.2)'], ['E1013: Argument 1: type mismatch, expected string but got float', 'E1222: String or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
300 CheckDefAndScriptFailure(['balloon_show({"a": 10})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1222: String or List required for argument 1']) |
24246
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
301 enddef |
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
302 |
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
303 def Test_balloon_split() |
24248
883d7ceffd97
patch 8.2.2665: test failures
Bram Moolenaar <Bram@vim.org>
parents:
24246
diff
changeset
|
304 CheckFeature balloon_eval_term |
24246
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
305 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
306 assert_fails('balloon_split([])', 'E1174:') |
24246
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
307 assert_fails('balloon_split(true)', 'E1174:') |
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
308 enddef |
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
309 |
25806
8d55e978f95b
patch 8.2.3438: cannot manipulate blobs
Bram Moolenaar <Bram@vim.org>
parents:
25784
diff
changeset
|
310 def Test_blob2list() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
311 CheckDefAndScriptFailure(['blob2list(10)'], ['E1013: Argument 1: type mismatch, expected blob but got number', 'E1238: Blob required for argument 1']) |
25806
8d55e978f95b
patch 8.2.3438: cannot manipulate blobs
Bram Moolenaar <Bram@vim.org>
parents:
25784
diff
changeset
|
312 enddef |
8d55e978f95b
patch 8.2.3438: cannot manipulate blobs
Bram Moolenaar <Bram@vim.org>
parents:
25784
diff
changeset
|
313 |
24210
083f07f99e20
patch 8.2.2646: Vim9: error for not using string doesn't mentionargument
Bram Moolenaar <Bram@vim.org>
parents:
24118
diff
changeset
|
314 def Test_browse() |
083f07f99e20
patch 8.2.2646: Vim9: error for not using string doesn't mentionargument
Bram Moolenaar <Bram@vim.org>
parents:
24118
diff
changeset
|
315 CheckFeature browse |
083f07f99e20
patch 8.2.2646: Vim9: error for not using string doesn't mentionargument
Bram Moolenaar <Bram@vim.org>
parents:
24118
diff
changeset
|
316 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
317 CheckDefAndScriptFailure(['browse(2, "title", "dir", "file")'], ['E1013: Argument 1: type mismatch, expected bool but got number', 'E1212: Bool required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
318 CheckDefAndScriptFailure(['browse(true, 2, "dir", "file")'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
319 CheckDefAndScriptFailure(['browse(true, "title", 3, "file")'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
320 CheckDefAndScriptFailure(['browse(true, "title", "dir", 4)'], ['E1013: Argument 4: type mismatch, expected string but got number', 'E1174: String required for argument 4']) |
24210
083f07f99e20
patch 8.2.2646: Vim9: error for not using string doesn't mentionargument
Bram Moolenaar <Bram@vim.org>
parents:
24118
diff
changeset
|
321 enddef |
083f07f99e20
patch 8.2.2646: Vim9: error for not using string doesn't mentionargument
Bram Moolenaar <Bram@vim.org>
parents:
24118
diff
changeset
|
322 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
323 def Test_browsedir() |
25384
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
324 if has('browse') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
325 CheckDefAndScriptFailure(['browsedir({}, "b")'], ['E1013: Argument 1: type mismatch, expected string but got dict<unknown>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
326 CheckDefAndScriptFailure(['browsedir("a", [])'], ['E1013: Argument 2: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 2']) |
25384
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
327 endif |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
328 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
329 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
330 def Test_bufadd() |
25384
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
331 assert_fails('bufadd([])', 'E1174:') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
332 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
333 |
24246
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
334 def Test_bufexists() |
25384
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
335 assert_fails('bufexists(true)', 'E1220:') |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
336 bufexists('')->assert_false() |
24246
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
337 enddef |
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
338 |
23654
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
339 def Test_buflisted() |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
340 var res: bool = buflisted('asdf') |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
341 assert_equal(false, res) |
25384
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
342 assert_fails('buflisted(true)', 'E1220:') |
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
343 assert_fails('buflisted([])', 'E1220:') |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
344 buflisted('')->assert_false() |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
345 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
346 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
347 def Test_bufload() |
25384
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
348 assert_fails('bufload([])', 'E1220:') |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
349 bufload('')->assert_equal(0) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
350 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
351 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
352 def Test_bufloaded() |
25384
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
353 assert_fails('bufloaded(true)', 'E1220:') |
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
354 assert_fails('bufloaded([])', 'E1220:') |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
355 bufloaded('')->assert_false() |
23654
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
356 enddef |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
357 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
358 def Test_bufname() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
359 split SomeFile |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
360 bufname('%')->assert_equal('SomeFile') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
361 edit OtherFile |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
362 bufname('#')->assert_equal('SomeFile') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
363 close |
25384
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
364 assert_fails('bufname(true)', 'E1220:') |
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
365 assert_fails('bufname([])', 'E1220:') |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
366 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
367 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
368 def Test_bufnr() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
369 var buf = bufnr() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
370 bufnr('%')->assert_equal(buf) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
371 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
372 buf = bufnr('Xdummy', true) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
373 buf->assert_notequal(-1) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
374 exe 'bwipe! ' .. buf |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
375 CheckDefAndScriptFailure(['bufnr([1])'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
376 CheckDefAndScriptFailure(['bufnr(1, 2)'], ['E1013: Argument 2: type mismatch, expected bool but got number', 'E1212: Bool required for argument 2']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
377 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
378 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
379 def Test_bufwinid() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
380 var origwin = win_getid() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
381 below split SomeFile |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
382 var SomeFileID = win_getid() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
383 below split OtherFile |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
384 below split SomeFile |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
385 bufwinid('SomeFile')->assert_equal(SomeFileID) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
386 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
387 win_gotoid(origwin) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
388 only |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
389 bwipe SomeFile |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
390 bwipe OtherFile |
24246
35603c7991d7
patch 8.2.2664: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
391 |
25384
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
392 assert_fails('bufwinid(true)', 'E1220:') |
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
393 assert_fails('bufwinid([])', 'E1220:') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
394 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
395 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
396 def Test_bufwinnr() |
25384
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
397 assert_fails('bufwinnr(true)', 'E1220:') |
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
398 assert_fails('bufwinnr([])', 'E1220:') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
399 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
400 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
401 def Test_byte2line() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
402 CheckDefAndScriptFailure(['byte2line("1")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
403 CheckDefAndScriptFailure(['byte2line([])'], ['E1013: Argument 1: type mismatch, expected number but got list<unknown>', 'E1210: Number required for argument 1']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
404 byte2line(0)->assert_equal(-1) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
405 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
406 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
407 def Test_byteidx() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
408 CheckDefAndScriptFailure(['byteidx(1, 2)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
409 CheckDefAndScriptFailure(['byteidx("a", "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
410 byteidx('', 0)->assert_equal(0) |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
411 byteidx('', 1)->assert_equal(-1) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
412 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
413 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
414 def Test_byteidxcomp() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
415 CheckDefAndScriptFailure(['byteidxcomp(1, 2)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
416 CheckDefAndScriptFailure(['byteidxcomp("a", "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
417 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
418 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
419 def Test_call_call() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
420 var l = [3, 2, 1] |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
421 call('reverse', [l]) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
422 l->assert_equal([1, 2, 3]) |
26731
7f4cc4e58f75
patch 8.2.3894: Vim9: no proper type check for first argument of call()
Bram Moolenaar <Bram@vim.org>
parents:
26686
diff
changeset
|
423 |
7f4cc4e58f75
patch 8.2.3894: Vim9: no proper type check for first argument of call()
Bram Moolenaar <Bram@vim.org>
parents:
26686
diff
changeset
|
424 CheckDefExecAndScriptFailure(['call(123, [2])'], 'E1256: String or function required for argument 1') |
7f4cc4e58f75
patch 8.2.3894: Vim9: no proper type check for first argument of call()
Bram Moolenaar <Bram@vim.org>
parents:
26686
diff
changeset
|
425 CheckDefExecAndScriptFailure(['call(true, [2])'], 'E1256: String or function required for argument 1') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
426 CheckDefAndScriptFailure(['call("reverse", 2)'], ['E1013: Argument 2: type mismatch, expected list<any> but got number', 'E1211: List required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
427 CheckDefAndScriptFailure(['call("reverse", [2], [1])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 3']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
428 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
429 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
430 def Test_ch_canread() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
431 if !has('channel') |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
432 CheckFeature channel |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
433 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
434 CheckDefAndScriptFailure(['ch_canread(10)'], ['E1013: Argument 1: type mismatch, expected channel but got number', 'E1217: Channel or Job required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
435 endif |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
436 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
437 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
438 def Test_ch_close() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
439 if !has('channel') |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
440 CheckFeature channel |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
441 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
442 CheckDefAndScriptFailure(['ch_close("c")'], ['E1013: Argument 1: type mismatch, expected channel but got string', 'E1217: Channel or Job required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
443 endif |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
444 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
445 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
446 def Test_ch_close_in() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
447 if !has('channel') |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
448 CheckFeature channel |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
449 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
450 CheckDefAndScriptFailure(['ch_close_in(true)'], ['E1013: Argument 1: type mismatch, expected channel but got bool', 'E1217: Channel or Job required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
451 endif |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
452 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
453 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
454 def Test_ch_evalexpr() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
455 if !has('channel') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
456 CheckFeature channel |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
457 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
458 CheckDefAndScriptFailure(['ch_evalexpr(1, "a")'], ['E1013: Argument 1: type mismatch, expected channel but got number', 'E1217: Channel or Job required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
459 CheckDefAndScriptFailure(['ch_evalexpr(test_null_channel(), 1, [])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 3']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
460 endif |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
461 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
462 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
463 def Test_ch_evalraw() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
464 if !has('channel') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
465 CheckFeature channel |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
466 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
467 CheckDefAndScriptFailure(['ch_evalraw(1, "")'], ['E1013: Argument 1: type mismatch, expected channel but got number', 'E1217: Channel or Job required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
468 CheckDefAndScriptFailure(['ch_evalraw(test_null_channel(), 1)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1221: String or Blob required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
469 CheckDefAndScriptFailure(['ch_evalraw(test_null_channel(), "", [])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 3']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
470 endif |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
471 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
472 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
473 def Test_ch_getbufnr() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
474 if !has('channel') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
475 CheckFeature channel |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
476 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
477 CheckDefAndScriptFailure(['ch_getbufnr(1, "a")'], ['E1013: Argument 1: type mismatch, expected channel but got number', 'E1217: Channel or Job required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
478 CheckDefAndScriptFailure(['ch_getbufnr(test_null_channel(), 1)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
479 # test empty string argument for ch_getbufnr() |
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
480 var job: job = job_start(&shell) |
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
481 job->ch_getbufnr('')->assert_equal(-1) |
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
482 job_stop(job) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
483 endif |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
484 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
485 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
486 def Test_ch_getjob() |
25288
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
487 if !has('channel') |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
488 CheckFeature channel |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
489 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
490 CheckDefAndScriptFailure(['ch_getjob(1)'], ['E1013: Argument 1: type mismatch, expected channel but got number', 'E1217: Channel or Job required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
491 CheckDefAndScriptFailure(['ch_getjob({"a": 10})'], ['E1013: Argument 1: type mismatch, expected channel but got dict<number>', 'E1217: Channel or Job required for argument 1']) |
25288
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
492 assert_equal(0, ch_getjob(test_null_channel())) |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
493 endif |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
494 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
495 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
496 def Test_ch_info() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
497 if !has('channel') |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
498 CheckFeature channel |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
499 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
500 CheckDefAndScriptFailure(['ch_info([1])'], ['E1013: Argument 1: type mismatch, expected channel but got list<number>', 'E1217: Channel or Job required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
501 endif |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
502 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
503 |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
504 def Test_ch_log() |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
505 if !has('channel') |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
506 CheckFeature channel |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
507 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
508 CheckDefAndScriptFailure(['ch_log(true)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
509 CheckDefAndScriptFailure(['ch_log("a", 1)'], ['E1013: Argument 2: type mismatch, expected channel but got number', 'E1217: Channel or Job required for argument 2']) |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
510 endif |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
511 enddef |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
512 |
24250
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
513 def Test_ch_logfile() |
24349
21c72f782ae1
patch 8.2.2715: Vim9: tests fail without the channel feature
Bram Moolenaar <Bram@vim.org>
parents:
24258
diff
changeset
|
514 if !has('channel') |
21c72f782ae1
patch 8.2.2715: Vim9: tests fail without the channel feature
Bram Moolenaar <Bram@vim.org>
parents:
24258
diff
changeset
|
515 CheckFeature channel |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
516 else |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
517 assert_fails('ch_logfile(true)', 'E1174:') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
518 assert_fails('ch_logfile("foo", true)', 'E1174:') |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
519 ch_logfile('', '')->assert_equal(0) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
520 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
521 CheckDefAndScriptFailure(['ch_logfile(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
522 CheckDefAndScriptFailure(['ch_logfile("a", true)'], ['E1013: Argument 2: type mismatch, expected string but got bool', 'E1174: String required for argument 2']) |
24349
21c72f782ae1
patch 8.2.2715: Vim9: tests fail without the channel feature
Bram Moolenaar <Bram@vim.org>
parents:
24258
diff
changeset
|
523 endif |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
524 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
525 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
526 def Test_ch_open() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
527 if !has('channel') |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
528 CheckFeature channel |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
529 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
530 CheckDefAndScriptFailure(['ch_open({"a": 10}, "a")'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
531 CheckDefAndScriptFailure(['ch_open("a", [1])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
532 CheckDefExecAndScriptFailure(['ch_open("")'], 'E475: Invalid argument') |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
533 endif |
24250
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
534 enddef |
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
535 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
536 def Test_ch_read() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
537 if !has('channel') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
538 CheckFeature channel |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
539 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
540 CheckDefAndScriptFailure(['ch_read(1)'], ['E1013: Argument 1: type mismatch, expected channel but got number', 'E1217: Channel or Job required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
541 CheckDefAndScriptFailure(['ch_read(test_null_channel(), [])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
542 endif |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
543 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
544 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
545 def Test_ch_readblob() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
546 if !has('channel') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
547 CheckFeature channel |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
548 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
549 CheckDefAndScriptFailure(['ch_readblob(1)'], ['E1013: Argument 1: type mismatch, expected channel but got number', 'E1217: Channel or Job required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
550 CheckDefAndScriptFailure(['ch_readblob(test_null_channel(), [])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
551 endif |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
552 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
553 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
554 def Test_ch_readraw() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
555 if !has('channel') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
556 CheckFeature channel |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
557 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
558 CheckDefAndScriptFailure(['ch_readraw(1)'], ['E1013: Argument 1: type mismatch, expected channel but got number', 'E1217: Channel or Job required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
559 CheckDefAndScriptFailure(['ch_readraw(test_null_channel(), [])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
560 endif |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
561 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
562 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
563 def Test_ch_sendexpr() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
564 if !has('channel') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
565 CheckFeature channel |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
566 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
567 CheckDefAndScriptFailure(['ch_sendexpr(1, "a")'], ['E1013: Argument 1: type mismatch, expected channel but got number', 'E1217: Channel or Job required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
568 CheckDefAndScriptFailure(['ch_sendexpr(test_null_channel(), 1, [])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 3']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
569 endif |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
570 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
571 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
572 def Test_ch_sendraw() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
573 if !has('channel') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
574 CheckFeature channel |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
575 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
576 CheckDefAndScriptFailure(['ch_sendraw(1, "")'], ['E1013: Argument 1: type mismatch, expected channel but got number', 'E1217: Channel or Job required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
577 CheckDefAndScriptFailure(['ch_sendraw(test_null_channel(), 1)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1221: String or Blob required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
578 CheckDefAndScriptFailure(['ch_sendraw(test_null_channel(), "", [])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 3']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
579 endif |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
580 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
581 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
582 def Test_ch_setoptions() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
583 if !has('channel') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
584 CheckFeature channel |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
585 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
586 CheckDefAndScriptFailure(['ch_setoptions(1, {})'], ['E1013: Argument 1: type mismatch, expected channel but got number', 'E1217: Channel or Job required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
587 CheckDefAndScriptFailure(['ch_setoptions(test_null_channel(), [])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
588 endif |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
589 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
590 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
591 def Test_ch_status() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
592 if !has('channel') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
593 CheckFeature channel |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
594 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
595 CheckDefAndScriptFailure(['ch_status(1)'], ['E1013: Argument 1: type mismatch, expected channel but got number', 'E1217: Channel or Job required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
596 CheckDefAndScriptFailure(['ch_status(test_null_channel(), [])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
597 endif |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
598 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
599 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
600 def Test_char2nr() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
601 char2nr('あ', true)->assert_equal(12354) |
24250
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
602 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
603 assert_fails('char2nr(true)', 'E1174:') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
604 CheckDefAndScriptFailure(['char2nr(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
605 CheckDefAndScriptFailure(['char2nr("a", 2)'], ['E1013: Argument 2: type mismatch, expected bool but got number', 'E1212: Bool required for argument 2']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
606 assert_equal(97, char2nr('a', 1)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
607 assert_equal(97, char2nr('a', 0)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
608 assert_equal(97, char2nr('a', true)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
609 assert_equal(97, char2nr('a', false)) |
25806
8d55e978f95b
patch 8.2.3438: cannot manipulate blobs
Bram Moolenaar <Bram@vim.org>
parents:
25784
diff
changeset
|
610 char2nr('')->assert_equal(0) |
24250
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
611 enddef |
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
612 |
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
613 def Test_charclass() |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
614 assert_fails('charclass(true)', 'E1174:') |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
615 charclass('')->assert_equal(0) |
24250
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
616 enddef |
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
617 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
618 def Test_charcol() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
619 CheckDefAndScriptFailure(['charcol(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1222: String or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
620 CheckDefAndScriptFailure(['charcol({a: 10})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1222: String or List required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
621 CheckDefExecAndScriptFailure(['charcol("")'], 'E1209: Invalid value for a line number') |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
622 new |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
623 setline(1, ['abcdefgh']) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
624 cursor(1, 4) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
625 assert_equal(4, charcol('.')) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
626 assert_equal(9, charcol([1, '$'])) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
627 assert_equal(0, charcol([10, '$'])) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
628 bw! |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
629 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
630 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
631 def Test_charidx() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
632 CheckDefAndScriptFailure(['charidx(0z10, 1)'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
633 CheckDefAndScriptFailure(['charidx("a", "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
634 CheckDefAndScriptFailure(['charidx("a", 1, "")'], ['E1013: Argument 3: type mismatch, expected bool but got string', 'E1212: Bool required for argument 3']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
635 charidx('', 0)->assert_equal(-1) |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
636 charidx('', 1)->assert_equal(-1) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
637 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
638 |
24250
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
639 def Test_chdir() |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
640 assert_fails('chdir(true)', 'E1174:') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
641 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
642 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
643 def Test_cindent() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
644 CheckDefAndScriptFailure(['cindent([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
645 CheckDefAndScriptFailure(['cindent(null)'], ['E1013: Argument 1: type mismatch, expected string but got special', 'E1220: String or Number required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
646 CheckDefExecAndScriptFailure(['cindent("")'], 'E1209: Invalid value for a line number') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
647 assert_equal(-1, cindent(0)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
648 assert_equal(0, cindent('.')) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
649 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
650 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
651 def Test_clearmatches() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
652 CheckDefAndScriptFailure(['clearmatches("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
653 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
654 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
655 def Test_col() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
656 new |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
657 setline(1, 'abcdefgh') |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
658 cursor(1, 4) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
659 assert_equal(4, col('.')) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
660 col([1, '$'])->assert_equal(9) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
661 assert_equal(0, col([10, '$'])) |
24250
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
662 |
25384
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
663 assert_fails('col(true)', 'E1222:') |
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
664 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
665 CheckDefAndScriptFailure(['col(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1222: String or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
666 CheckDefAndScriptFailure(['col({a: 10})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1222: String or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
667 CheckDefAndScriptFailure(['col(true)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1222: String or List required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
668 CheckDefExecAndScriptFailure(['col("")'], 'E1209: Invalid value for a line number') |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
669 bw! |
24250
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
670 enddef |
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
671 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
672 def Test_complete() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
673 CheckDefAndScriptFailure(['complete("1", [])'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
674 CheckDefAndScriptFailure(['complete(1, {})'], ['E1013: Argument 2: type mismatch, expected list<any> but got dict<unknown>', 'E1211: List required for argument 2']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
675 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
676 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
677 def Test_complete_add() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
678 CheckDefAndScriptFailure(['complete_add([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1223: String or Dictionary required for argument 1']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
679 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
680 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
681 def Test_complete_info() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
682 CheckDefAndScriptFailure(['complete_info("")'], ['E1013: Argument 1: type mismatch, expected list<string> but got string', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
683 CheckDefAndScriptFailure(['complete_info({})'], ['E1013: Argument 1: type mismatch, expected list<string> but got dict<unknown>', 'E1211: List required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
684 assert_equal({'pum_visible': 0, 'mode': '', 'selected': -1, 'items': []}, complete_info()) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
685 assert_equal({'mode': '', 'items': []}, complete_info(['mode', 'items'])) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
686 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
687 |
24250
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
688 def Test_confirm() |
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
689 if !has('dialog_con') && !has('dialog_gui') |
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
690 CheckFeature dialog_con |
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
691 endif |
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
692 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
693 assert_fails('confirm(true)', 'E1174:') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
694 assert_fails('confirm("yes", true)', 'E1174:') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
695 assert_fails('confirm("yes", "maybe", 2, true)', 'E1174:') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
696 CheckDefAndScriptFailure(['confirm(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
697 CheckDefAndScriptFailure(['confirm("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
698 CheckDefAndScriptFailure(['confirm("a", "b", "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
699 CheckDefAndScriptFailure(['confirm("a", "b", 3, 4)'], ['E1013: Argument 4: type mismatch, expected string but got number', 'E1174: String required for argument 4']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
700 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
701 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
702 def Test_copy_return_type() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
703 var l = copy([1, 2, 3]) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
704 var res = 0 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
705 for n in l |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
706 res += n |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
707 endfor |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
708 res->assert_equal(6) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
709 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
710 var dl = deepcopy([1, 2, 3]) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
711 res = 0 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
712 for n in dl |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
713 res += n |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
714 endfor |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
715 res->assert_equal(6) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
716 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
717 dl = deepcopy([1, 2, 3], true) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
718 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
719 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
720 def Test_count() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
721 count('ABC ABC ABC', 'b', true)->assert_equal(3) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
722 count('ABC ABC ABC', 'b', false)->assert_equal(0) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
723 CheckDefAndScriptFailure(['count(10, 1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1225: String, List or Dictionary required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
724 CheckDefAndScriptFailure(['count("a", [1], 2)'], ['E1013: Argument 3: type mismatch, expected bool but got number', 'E1212: Bool required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
725 CheckDefAndScriptFailure(['count("a", [1], 0, "b")'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
726 count([1, 2, 2, 3], 2)->assert_equal(2) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
727 count([1, 2, 2, 3], 2, false, 2)->assert_equal(1) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
728 count({a: 1.1, b: 2.2, c: 1.1}, 1.1)->assert_equal(2) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
729 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
730 |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
731 def Test_cscope_connection() |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
732 CheckFeature cscope |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
733 assert_equal(0, cscope_connection()) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
734 CheckDefAndScriptFailure(['cscope_connection("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
735 CheckDefAndScriptFailure(['cscope_connection(1, 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
736 CheckDefAndScriptFailure(['cscope_connection(1, "b", 3)'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
737 enddef |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
738 |
23276
b79cdad3ea2e
patch 8.2.2184: Vim9: no error when using "2" for a line number
Bram Moolenaar <Bram@vim.org>
parents:
23175
diff
changeset
|
739 def Test_cursor() |
b79cdad3ea2e
patch 8.2.2184: Vim9: no error when using "2" for a line number
Bram Moolenaar <Bram@vim.org>
parents:
23175
diff
changeset
|
740 new |
b79cdad3ea2e
patch 8.2.2184: Vim9: no error when using "2" for a line number
Bram Moolenaar <Bram@vim.org>
parents:
23175
diff
changeset
|
741 setline(1, range(4)) |
b79cdad3ea2e
patch 8.2.2184: Vim9: no error when using "2" for a line number
Bram Moolenaar <Bram@vim.org>
parents:
23175
diff
changeset
|
742 cursor(2, 1) |
b79cdad3ea2e
patch 8.2.2184: Vim9: no error when using "2" for a line number
Bram Moolenaar <Bram@vim.org>
parents:
23175
diff
changeset
|
743 assert_equal(2, getcurpos()[1]) |
b79cdad3ea2e
patch 8.2.2184: Vim9: no error when using "2" for a line number
Bram Moolenaar <Bram@vim.org>
parents:
23175
diff
changeset
|
744 cursor('$', 1) |
b79cdad3ea2e
patch 8.2.2184: Vim9: no error when using "2" for a line number
Bram Moolenaar <Bram@vim.org>
parents:
23175
diff
changeset
|
745 assert_equal(4, getcurpos()[1]) |
25314
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
746 cursor([2, 1]) |
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
747 assert_equal(2, getcurpos()[1]) |
23276
b79cdad3ea2e
patch 8.2.2184: Vim9: no error when using "2" for a line number
Bram Moolenaar <Bram@vim.org>
parents:
23175
diff
changeset
|
748 |
b79cdad3ea2e
patch 8.2.2184: Vim9: no error when using "2" for a line number
Bram Moolenaar <Bram@vim.org>
parents:
23175
diff
changeset
|
749 var lines =<< trim END |
b79cdad3ea2e
patch 8.2.2184: Vim9: no error when using "2" for a line number
Bram Moolenaar <Bram@vim.org>
parents:
23175
diff
changeset
|
750 cursor('2', 1) |
b79cdad3ea2e
patch 8.2.2184: Vim9: no error when using "2" for a line number
Bram Moolenaar <Bram@vim.org>
parents:
23175
diff
changeset
|
751 END |
25216
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
752 CheckDefExecAndScriptFailure(lines, 'E1209:') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
753 CheckDefAndScriptFailure(['cursor(0z10, 1)'], ['E1013: Argument 1: type mismatch, expected number but got blob', 'E1224: String, Number or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
754 CheckDefAndScriptFailure(['cursor(1, "2")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
755 CheckDefAndScriptFailure(['cursor(1, 2, "3")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
756 CheckDefExecAndScriptFailure(['cursor("", 2)'], 'E1209: Invalid value for a line number') |
23276
b79cdad3ea2e
patch 8.2.2184: Vim9: no error when using "2" for a line number
Bram Moolenaar <Bram@vim.org>
parents:
23175
diff
changeset
|
757 enddef |
b79cdad3ea2e
patch 8.2.2184: Vim9: no error when using "2" for a line number
Bram Moolenaar <Bram@vim.org>
parents:
23175
diff
changeset
|
758 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
759 def Test_debugbreak() |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
760 CheckMSWindows |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
761 CheckDefAndScriptFailure(['debugbreak("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
762 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
763 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
764 def Test_deepcopy() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
765 CheckDefAndScriptFailure(['deepcopy({}, 2)'], ['E1013: Argument 2: type mismatch, expected bool but got number', 'E1212: Bool required for argument 2']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
766 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
767 |
23654
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
768 def Test_delete() |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
769 var res: bool = delete('doesnotexist') |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
770 assert_equal(true, res) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
771 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
772 CheckDefAndScriptFailure(['delete(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
773 CheckDefAndScriptFailure(['delete("a", 10)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
774 CheckDefExecAndScriptFailure(['delete("")'], 'E474: Invalid argument') |
23654
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
775 enddef |
1974c5122506
patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Bram Moolenaar <Bram@vim.org>
parents:
23646
diff
changeset
|
776 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
777 def Test_deletebufline() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
778 CheckDefAndScriptFailure(['deletebufline([], 2)'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
779 CheckDefAndScriptFailure(['deletebufline("a", [])'], ['E1013: Argument 2: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
780 CheckDefAndScriptFailure(['deletebufline("a", 2, 0z10)'], ['E1013: Argument 3: type mismatch, expected string but got blob', 'E1220: String or Number required for argument 3']) |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
781 new |
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
782 setline(1, ['one', 'two']) |
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
783 deletebufline('', 1) |
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
784 getline(1, '$')->assert_equal(['two']) |
26782
b7b82279426f
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
Bram Moolenaar <Bram@vim.org>
parents:
26775
diff
changeset
|
785 |
b7b82279426f
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
Bram Moolenaar <Bram@vim.org>
parents:
26775
diff
changeset
|
786 assert_fails('deletebufline("", "$a", "$b")', ['E1030: Using a String as a Number: "$a"', 'E1030: Using a String as a Number: "$a"']) |
b7b82279426f
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
Bram Moolenaar <Bram@vim.org>
parents:
26775
diff
changeset
|
787 assert_fails('deletebufline("", "$", "$b")', ['E1030: Using a String as a Number: "$b"', 'E1030: Using a String as a Number: "$b"']) |
b7b82279426f
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
Bram Moolenaar <Bram@vim.org>
parents:
26775
diff
changeset
|
788 |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
789 bwipe! |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
790 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
791 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
792 def Test_diff_filler() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
793 CheckDefAndScriptFailure(['diff_filler([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
794 CheckDefAndScriptFailure(['diff_filler(true)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
795 CheckDefExecAndScriptFailure(['diff_filler("")'], 'E1209: Invalid value for a line number') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
796 assert_equal(0, diff_filler(1)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
797 assert_equal(0, diff_filler('.')) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
798 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
799 |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
800 def Test_diff_hlID() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
801 CheckDefAndScriptFailure(['diff_hlID(0z10, 1)'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
802 CheckDefAndScriptFailure(['diff_hlID(1, "a")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
803 CheckDefExecAndScriptFailure(['diff_hlID("", 10)'], 'E1209: Invalid value for a line number') |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
804 enddef |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
805 |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
806 def Test_digraph_get() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
807 CheckDefAndScriptFailure(['digraph_get(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
808 CheckDefExecAndScriptFailure(['digraph_get("")'], 'E1214: Digraph must be just two characters') |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
809 enddef |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
810 |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
811 def Test_digraph_getlist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
812 CheckDefAndScriptFailure(['digraph_getlist(10)'], ['E1013: Argument 1: type mismatch, expected bool but got number', 'E1212: Bool required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
813 CheckDefAndScriptFailure(['digraph_getlist("")'], ['E1013: Argument 1: type mismatch, expected bool but got string', 'E1212: Bool required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
814 enddef |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
815 |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
816 def Test_digraph_set() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
817 CheckDefAndScriptFailure(['digraph_set(10, "a")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
818 CheckDefAndScriptFailure(['digraph_set("ab", 0z10)'], ['E1013: Argument 2: type mismatch, expected string but got blob', 'E1174: String required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
819 CheckDefExecAndScriptFailure(['digraph_set("", "a")'], 'E1214: Digraph must be just two characters') |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
820 enddef |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
821 |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
822 def Test_digraph_setlist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
823 CheckDefAndScriptFailure(['digraph_setlist("a")'], ['E1013: Argument 1: type mismatch, expected list<string> but got string', 'E1216: digraph_setlist() argument must be a list of lists with two items']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
824 CheckDefAndScriptFailure(['digraph_setlist({})'], ['E1013: Argument 1: type mismatch, expected list<string> but got dict<unknown>', 'E1216: digraph_setlist() argument must be a list of lists with two items']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
825 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
826 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
827 def Test_echoraw() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
828 CheckDefAndScriptFailure(['echoraw(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
829 CheckDefAndScriptFailure(['echoraw(["x"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1174: String required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
830 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
831 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
832 def Test_escape() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
833 CheckDefAndScriptFailure(['escape(10, " ")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
834 CheckDefAndScriptFailure(['escape(true, false)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
835 CheckDefAndScriptFailure(['escape("a", 10)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
836 assert_equal('a\:b', escape("a:b", ":")) |
25806
8d55e978f95b
patch 8.2.3438: cannot manipulate blobs
Bram Moolenaar <Bram@vim.org>
parents:
25784
diff
changeset
|
837 escape('abc', '')->assert_equal('abc') |
8d55e978f95b
patch 8.2.3438: cannot manipulate blobs
Bram Moolenaar <Bram@vim.org>
parents:
25784
diff
changeset
|
838 escape('', ':')->assert_equal('') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
839 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
840 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
841 def Test_eval() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
842 CheckDefAndScriptFailure(['eval(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
843 CheckDefAndScriptFailure(['eval(null)'], ['E1013: Argument 1: type mismatch, expected string but got special', 'E1174: String required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
844 CheckDefExecAndScriptFailure(['eval("")'], 'E15: Invalid expression') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
845 assert_equal(2, eval('1 + 1')) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
846 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
847 |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
848 def Test_executable() |
23175
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
849 assert_false(executable("")) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
850 assert_false(executable(test_null_string())) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
851 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
852 CheckDefExecFailure(['echo executable(123)'], 'E1013:') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
853 CheckDefExecFailure(['echo executable(true)'], 'E1013:') |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
854 enddef |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
855 |
24972
b11f38f77006
patch 8.2.3023: Vim9: arguments for execute() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24812
diff
changeset
|
856 def Test_execute() |
b11f38f77006
patch 8.2.3023: Vim9: arguments for execute() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24812
diff
changeset
|
857 var res = execute("echo 'hello'") |
b11f38f77006
patch 8.2.3023: Vim9: arguments for execute() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24812
diff
changeset
|
858 assert_equal("\nhello", res) |
b11f38f77006
patch 8.2.3023: Vim9: arguments for execute() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24812
diff
changeset
|
859 res = execute(["echo 'here'", "echo 'there'"]) |
b11f38f77006
patch 8.2.3023: Vim9: arguments for execute() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24812
diff
changeset
|
860 assert_equal("\nhere\nthere", res) |
b11f38f77006
patch 8.2.3023: Vim9: arguments for execute() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24812
diff
changeset
|
861 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
862 CheckDefAndScriptFailure(['execute(123)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1222: String or List required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
863 CheckDefFailure(['execute([123])'], 'E1013: Argument 1: type mismatch, expected list<string> but got list<number>') |
24972
b11f38f77006
patch 8.2.3023: Vim9: arguments for execute() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24812
diff
changeset
|
864 CheckDefExecFailure(['echo execute(["xx", 123])'], 'E492') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
865 CheckDefAndScriptFailure(['execute("xx", 123)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
24972
b11f38f77006
patch 8.2.3023: Vim9: arguments for execute() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24812
diff
changeset
|
866 enddef |
b11f38f77006
patch 8.2.3023: Vim9: arguments for execute() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24812
diff
changeset
|
867 |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
868 def Test_exepath() |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
869 CheckDefExecFailure(['echo exepath(true)'], 'E1013:') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
870 CheckDefExecFailure(['echo exepath(v:null)'], 'E1013:') |
24222
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24210
diff
changeset
|
871 CheckDefExecFailure(['echo exepath("")'], 'E1175:') |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
872 enddef |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
873 |
25525
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
874 command DoSomeCommand let g:didSomeCommand = 4 |
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
875 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
876 def Test_exists() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
877 CheckDefAndScriptFailure(['exists(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
878 call assert_equal(1, exists('&tabstop')) |
25479
fbdfa533001c
patch 8.2.3276: Vim9: exists() can only be evaluated at runtime
Bram Moolenaar <Bram@vim.org>
parents:
25449
diff
changeset
|
879 |
25555
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
880 var lines =<< trim END |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
881 if exists('+newoption') |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
882 if &newoption == 'ok' |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
883 endif |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
884 endif |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
885 END |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
886 CheckDefFailure(lines, 'E113:') |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
887 CheckScriptSuccess(lines) |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
888 enddef |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
889 |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
890 def Test_exists_compiled() |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
891 call assert_equal(1, exists_compiled('&tabstop')) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
892 CheckDefAndScriptFailure(['exists_compiled(10)'], ['E1232:', 'E1233:']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
893 CheckDefAndScriptFailure(['exists_compiled(v:progname)'], ['E1232:', 'E1233:']) |
25555
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
894 |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
895 if exists_compiled('+newoption') |
25479
fbdfa533001c
patch 8.2.3276: Vim9: exists() can only be evaluated at runtime
Bram Moolenaar <Bram@vim.org>
parents:
25449
diff
changeset
|
896 if &newoption == 'ok' |
fbdfa533001c
patch 8.2.3276: Vim9: exists() can only be evaluated at runtime
Bram Moolenaar <Bram@vim.org>
parents:
25449
diff
changeset
|
897 endif |
fbdfa533001c
patch 8.2.3276: Vim9: exists() can only be evaluated at runtime
Bram Moolenaar <Bram@vim.org>
parents:
25449
diff
changeset
|
898 endif |
25555
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
899 if exists_compiled('&newoption') |
25479
fbdfa533001c
patch 8.2.3276: Vim9: exists() can only be evaluated at runtime
Bram Moolenaar <Bram@vim.org>
parents:
25449
diff
changeset
|
900 if &newoption == 'ok' |
fbdfa533001c
patch 8.2.3276: Vim9: exists() can only be evaluated at runtime
Bram Moolenaar <Bram@vim.org>
parents:
25449
diff
changeset
|
901 endif |
fbdfa533001c
patch 8.2.3276: Vim9: exists() can only be evaluated at runtime
Bram Moolenaar <Bram@vim.org>
parents:
25449
diff
changeset
|
902 endif |
25555
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
903 if exists_compiled('+tabstop') |
25479
fbdfa533001c
patch 8.2.3276: Vim9: exists() can only be evaluated at runtime
Bram Moolenaar <Bram@vim.org>
parents:
25449
diff
changeset
|
904 assert_equal(8, &tabstop) |
fbdfa533001c
patch 8.2.3276: Vim9: exists() can only be evaluated at runtime
Bram Moolenaar <Bram@vim.org>
parents:
25449
diff
changeset
|
905 else |
fbdfa533001c
patch 8.2.3276: Vim9: exists() can only be evaluated at runtime
Bram Moolenaar <Bram@vim.org>
parents:
25449
diff
changeset
|
906 assert_report('tabstop option not existing?') |
fbdfa533001c
patch 8.2.3276: Vim9: exists() can only be evaluated at runtime
Bram Moolenaar <Bram@vim.org>
parents:
25449
diff
changeset
|
907 endif |
25555
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
908 if exists_compiled('&tabstop') |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
909 assert_equal(8, &tabstop) |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
910 else |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
911 assert_report('tabstop option not existing?') |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
912 endif |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
913 |
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
914 if exists_compiled(':DoSomeCommand') >= 2 |
25525
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
915 DoSomeCommand |
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
916 endif |
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
917 assert_equal(4, g:didSomeCommand) |
25555
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
918 if exists_compiled(':NoSuchCommand') >= 2 |
25525
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
919 NoSuchCommand |
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
920 endif |
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
921 |
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
922 var found = false |
25555
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
923 if exists_compiled('*CheckScriptSuccess') |
25525
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
924 found = true |
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
925 endif |
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
926 assert_true(found) |
25555
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
927 if exists_compiled('*NoSuchFunction') |
25525
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
928 NoSuchFunction() |
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
929 endif |
25555
446f478d6fb1
patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Bram Moolenaar <Bram@vim.org>
parents:
25525
diff
changeset
|
930 if exists_compiled('*no_such_function') |
25525
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
931 no_such_function() |
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
932 endif |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
933 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
934 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
935 def Test_expand() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
936 split SomeFile |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
937 expand('%', true, true)->assert_equal(['SomeFile']) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
938 close |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
939 CheckDefAndScriptFailure(['expand(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
940 CheckDefAndScriptFailure(['expand("a", 2)'], ['E1013: Argument 2: type mismatch, expected bool but got number', 'E1212: Bool required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
941 CheckDefAndScriptFailure(['expand("a", true, 2)'], ['E1013: Argument 3: type mismatch, expected bool but got number', 'E1212: Bool required for argument 3']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
942 expand('')->assert_equal('') |
26230
8b8470b511f5
patch 8.2.3646: using <sfile> in a function gives an unexpected result
Bram Moolenaar <Bram@vim.org>
parents:
26145
diff
changeset
|
943 |
8b8470b511f5
patch 8.2.3646: using <sfile> in a function gives an unexpected result
Bram Moolenaar <Bram@vim.org>
parents:
26145
diff
changeset
|
944 var caught = false |
8b8470b511f5
patch 8.2.3646: using <sfile> in a function gives an unexpected result
Bram Moolenaar <Bram@vim.org>
parents:
26145
diff
changeset
|
945 try |
8b8470b511f5
patch 8.2.3646: using <sfile> in a function gives an unexpected result
Bram Moolenaar <Bram@vim.org>
parents:
26145
diff
changeset
|
946 echo expand("<sfile>") |
8b8470b511f5
patch 8.2.3646: using <sfile> in a function gives an unexpected result
Bram Moolenaar <Bram@vim.org>
parents:
26145
diff
changeset
|
947 catch /E1245:/ |
8b8470b511f5
patch 8.2.3646: using <sfile> in a function gives an unexpected result
Bram Moolenaar <Bram@vim.org>
parents:
26145
diff
changeset
|
948 caught = true |
8b8470b511f5
patch 8.2.3646: using <sfile> in a function gives an unexpected result
Bram Moolenaar <Bram@vim.org>
parents:
26145
diff
changeset
|
949 endtry |
8b8470b511f5
patch 8.2.3646: using <sfile> in a function gives an unexpected result
Bram Moolenaar <Bram@vim.org>
parents:
26145
diff
changeset
|
950 assert_true(caught) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
951 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
952 |
24584
abc4793f48a3
patch 8.2.2831: Vim9: expandcmd() not tested
Bram Moolenaar <Bram@vim.org>
parents:
24484
diff
changeset
|
953 def Test_expandcmd() |
abc4793f48a3
patch 8.2.2831: Vim9: expandcmd() not tested
Bram Moolenaar <Bram@vim.org>
parents:
24484
diff
changeset
|
954 $FOO = "blue" |
abc4793f48a3
patch 8.2.2831: Vim9: expandcmd() not tested
Bram Moolenaar <Bram@vim.org>
parents:
24484
diff
changeset
|
955 assert_equal("blue sky", expandcmd("`=$FOO .. ' sky'`")) |
abc4793f48a3
patch 8.2.2831: Vim9: expandcmd() not tested
Bram Moolenaar <Bram@vim.org>
parents:
24484
diff
changeset
|
956 |
abc4793f48a3
patch 8.2.2831: Vim9: expandcmd() not tested
Bram Moolenaar <Bram@vim.org>
parents:
24484
diff
changeset
|
957 assert_equal("yes", expandcmd("`={a: 'yes'}['a']`")) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
958 expandcmd('')->assert_equal('') |
26907
6f43253463cc
patch 8.2.3982: some lines of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
26891
diff
changeset
|
959 |
6f43253463cc
patch 8.2.3982: some lines of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
26891
diff
changeset
|
960 CheckDefAndScriptFailure(['expandcmd([1])'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1174: String required for argument 1']) |
24584
abc4793f48a3
patch 8.2.2831: Vim9: expandcmd() not tested
Bram Moolenaar <Bram@vim.org>
parents:
24484
diff
changeset
|
961 enddef |
abc4793f48a3
patch 8.2.2831: Vim9: expandcmd() not tested
Bram Moolenaar <Bram@vim.org>
parents:
24484
diff
changeset
|
962 |
22766
a7082e865ffd
patch 8.2.1931: Vim9: arguments of extend() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
22679
diff
changeset
|
963 def Test_extend_arg_types() |
23800
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
964 g:number_one = 1 |
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
965 g:string_keep = 'keep' |
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
966 var lines =<< trim END |
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
967 assert_equal([1, 2, 3], extend([1, 2], [3])) |
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
968 assert_equal([3, 1, 2], extend([1, 2], [3], 0)) |
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
969 assert_equal([1, 3, 2], extend([1, 2], [3], 1)) |
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
970 assert_equal([1, 3, 2], extend([1, 2], [3], g:number_one)) |
22766
a7082e865ffd
patch 8.2.1931: Vim9: arguments of extend() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
22679
diff
changeset
|
971 |
23800
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
972 assert_equal({a: 1, b: 2, c: 3}, extend({a: 1, b: 2}, {c: 3})) |
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
973 assert_equal({a: 1, b: 4}, extend({a: 1, b: 2}, {b: 4})) |
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
974 assert_equal({a: 1, b: 2}, extend({a: 1, b: 2}, {b: 4}, 'keep')) |
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
975 assert_equal({a: 1, b: 2}, extend({a: 1, b: 2}, {b: 4}, g:string_keep)) |
22898
a8bccb0634bc
patch 8.2.1996: Vim9: invalid error for argument of extend()
Bram Moolenaar <Bram@vim.org>
parents:
22766
diff
changeset
|
976 |
26931
6cdf92e77a91
patch 8.2.3994: Vim9: extend() complains about type when it was not declared
Bram Moolenaar <Bram@vim.org>
parents:
26925
diff
changeset
|
977 # mix of types is OK without a declaration |
6cdf92e77a91
patch 8.2.3994: Vim9: extend() complains about type when it was not declared
Bram Moolenaar <Bram@vim.org>
parents:
26925
diff
changeset
|
978 |
23800
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
979 var res: list<dict<any>> |
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
980 extend(res, mapnew([1, 2], (_, v) => ({}))) |
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
981 assert_equal([{}, {}], res) |
26937
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
982 |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
983 var dany: dict<any> = {a: 0} |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
984 dany->extend({b: 'x'}) |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
985 assert_equal({a: 0, b: 'x'}, dany) |
23800
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
986 END |
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
987 CheckDefAndScriptSuccess(lines) |
22766
a7082e865ffd
patch 8.2.1931: Vim9: arguments of extend() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
22679
diff
changeset
|
988 |
26931
6cdf92e77a91
patch 8.2.3994: Vim9: extend() complains about type when it was not declared
Bram Moolenaar <Bram@vim.org>
parents:
26925
diff
changeset
|
989 lines =<< trim END |
6cdf92e77a91
patch 8.2.3994: Vim9: extend() complains about type when it was not declared
Bram Moolenaar <Bram@vim.org>
parents:
26925
diff
changeset
|
990 assert_equal([1, 2, "x"], extend([1, 2], ["x"])) |
6cdf92e77a91
patch 8.2.3994: Vim9: extend() complains about type when it was not declared
Bram Moolenaar <Bram@vim.org>
parents:
26925
diff
changeset
|
991 assert_equal([1, "b", 1], extend([1], ["b", 1])) |
26935
ccb9be1cdd71
patch 8.2.3996: Vim9: type checking lacks information about declared type
Bram Moolenaar <Bram@vim.org>
parents:
26931
diff
changeset
|
992 |
ccb9be1cdd71
patch 8.2.3996: Vim9: type checking lacks information about declared type
Bram Moolenaar <Bram@vim.org>
parents:
26931
diff
changeset
|
993 assert_equal({a: 1, b: "x"}, extend({a: 1}, {b: "x"})) |
26931
6cdf92e77a91
patch 8.2.3994: Vim9: extend() complains about type when it was not declared
Bram Moolenaar <Bram@vim.org>
parents:
26925
diff
changeset
|
994 END |
26935
ccb9be1cdd71
patch 8.2.3996: Vim9: type checking lacks information about declared type
Bram Moolenaar <Bram@vim.org>
parents:
26931
diff
changeset
|
995 CheckDefAndScriptSuccess(lines) |
26931
6cdf92e77a91
patch 8.2.3994: Vim9: extend() complains about type when it was not declared
Bram Moolenaar <Bram@vim.org>
parents:
26925
diff
changeset
|
996 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
997 CheckDefAndScriptFailure(['extend("a", 1)'], ['E1013: Argument 1: type mismatch, expected list<any> but got string', 'E712: Argument of extend() must be a List or Dictionary']) |
26935
ccb9be1cdd71
patch 8.2.3996: Vim9: type checking lacks information about declared type
Bram Moolenaar <Bram@vim.org>
parents:
26931
diff
changeset
|
998 CheckDefAndScriptFailure(['extend([1, 2], 3)'], ['E1013: Argument 2: type mismatch, expected list<any> but got number', 'E712: Argument of extend() must be a List or Dictionary']) |
26931
6cdf92e77a91
patch 8.2.3994: Vim9: extend() complains about type when it was not declared
Bram Moolenaar <Bram@vim.org>
parents:
26925
diff
changeset
|
999 CheckDefAndScriptFailure(['var ll = [1, 2]', 'extend(ll, ["x"])'], ['E1013: Argument 2: type mismatch, expected list<number> but got list<string>', 'E1013: Argument 2: type mismatch, expected list<number> but got list<string>']) |
22766
a7082e865ffd
patch 8.2.1931: Vim9: arguments of extend() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
22679
diff
changeset
|
1000 CheckDefFailure(['extend([1, 2], [3], "x")'], 'E1013: Argument 3: type mismatch, expected number but got string') |
a7082e865ffd
patch 8.2.1931: Vim9: arguments of extend() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
22679
diff
changeset
|
1001 |
26935
ccb9be1cdd71
patch 8.2.3996: Vim9: type checking lacks information about declared type
Bram Moolenaar <Bram@vim.org>
parents:
26931
diff
changeset
|
1002 CheckDefFailure(['extend({a: 1}, 42)'], 'E1013: Argument 2: type mismatch, expected dict<any> but got number') |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
1003 CheckDefFailure(['extend({a: 1}, {b: 2}, 1)'], 'E1013: Argument 3: type mismatch, expected string but got number') |
23640
8dcb2255ff9a
patch 8.2.2362: Vim9: check of builtin function argument type is incomplete
Bram Moolenaar <Bram@vim.org>
parents:
23604
diff
changeset
|
1004 |
26931
6cdf92e77a91
patch 8.2.3994: Vim9: extend() complains about type when it was not declared
Bram Moolenaar <Bram@vim.org>
parents:
26925
diff
changeset
|
1005 CheckScriptFailure(['vim9script', 'var l = [1]', 'extend(l, ["b", 1])'], 'E1013: Argument 2: type mismatch, expected list<number> but got list<any> in extend()') |
22766
a7082e865ffd
patch 8.2.1931: Vim9: arguments of extend() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
22679
diff
changeset
|
1006 enddef |
a7082e865ffd
patch 8.2.1931: Vim9: arguments of extend() not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
22679
diff
changeset
|
1007 |
23458
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1008 func g:ExtendDict(d) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1009 call extend(a:d, #{xx: 'x'}) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1010 endfunc |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1011 |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1012 def Test_extend_dict_item_type() |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1013 var lines =<< trim END |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1014 var d: dict<number> = {a: 1} |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1015 extend(d, {b: 2}) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1016 END |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1017 CheckDefAndScriptSuccess(lines) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1018 |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1019 lines =<< trim END |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1020 var d: dict<number> = {a: 1} |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1021 extend(d, {b: 'x'}) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1022 END |
23800
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
1023 CheckDefAndScriptFailure(lines, 'E1013: Argument 2: type mismatch, expected dict<number> but got dict<string>', 2) |
23458
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1024 |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1025 lines =<< trim END |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1026 var d: dict<number> = {a: 1} |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1027 g:ExtendDict(d) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1028 END |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1029 CheckDefExecFailure(lines, 'E1012: Type mismatch; expected number but got string', 0) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1030 CheckScriptFailure(['vim9script'] + lines, 'E1012:', 1) |
25571
951f3e04e238
patch 8.2.3322: Vim9: checking type of dict does not check member type
Bram Moolenaar <Bram@vim.org>
parents:
25555
diff
changeset
|
1031 |
951f3e04e238
patch 8.2.3322: Vim9: checking type of dict does not check member type
Bram Moolenaar <Bram@vim.org>
parents:
25555
diff
changeset
|
1032 lines =<< trim END |
951f3e04e238
patch 8.2.3322: Vim9: checking type of dict does not check member type
Bram Moolenaar <Bram@vim.org>
parents:
25555
diff
changeset
|
1033 var d: dict<bool> |
951f3e04e238
patch 8.2.3322: Vim9: checking type of dict does not check member type
Bram Moolenaar <Bram@vim.org>
parents:
25555
diff
changeset
|
1034 extend(d, {b: 0}) |
951f3e04e238
patch 8.2.3322: Vim9: checking type of dict does not check member type
Bram Moolenaar <Bram@vim.org>
parents:
25555
diff
changeset
|
1035 END |
951f3e04e238
patch 8.2.3322: Vim9: checking type of dict does not check member type
Bram Moolenaar <Bram@vim.org>
parents:
25555
diff
changeset
|
1036 CheckDefAndScriptFailure(lines, 'E1013: Argument 2: type mismatch, expected dict<bool> but got dict<number>', 2) |
23458
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1037 enddef |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1038 |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1039 func g:ExtendList(l) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1040 call extend(a:l, ['x']) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1041 endfunc |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1042 |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1043 def Test_extend_list_item_type() |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1044 var lines =<< trim END |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1045 var l: list<number> = [1] |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1046 extend(l, [2]) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1047 END |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1048 CheckDefAndScriptSuccess(lines) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1049 |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1050 lines =<< trim END |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1051 var l: list<number> = [1] |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1052 extend(l, ['x']) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1053 END |
23800
57f0e3fd7c05
patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Bram Moolenaar <Bram@vim.org>
parents:
23788
diff
changeset
|
1054 CheckDefAndScriptFailure(lines, 'E1013: Argument 2: type mismatch, expected list<number> but got list<string>', 2) |
23458
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1055 |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1056 lines =<< trim END |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1057 var l: list<number> = [1] |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1058 g:ExtendList(l) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1059 END |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1060 CheckDefExecFailure(lines, 'E1012: Type mismatch; expected number but got string', 0) |
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1061 CheckScriptFailure(['vim9script'] + lines, 'E1012:', 1) |
25571
951f3e04e238
patch 8.2.3322: Vim9: checking type of dict does not check member type
Bram Moolenaar <Bram@vim.org>
parents:
25555
diff
changeset
|
1062 |
951f3e04e238
patch 8.2.3322: Vim9: checking type of dict does not check member type
Bram Moolenaar <Bram@vim.org>
parents:
25555
diff
changeset
|
1063 lines =<< trim END |
951f3e04e238
patch 8.2.3322: Vim9: checking type of dict does not check member type
Bram Moolenaar <Bram@vim.org>
parents:
25555
diff
changeset
|
1064 var l: list<bool> |
951f3e04e238
patch 8.2.3322: Vim9: checking type of dict does not check member type
Bram Moolenaar <Bram@vim.org>
parents:
25555
diff
changeset
|
1065 extend(l, [0]) |
951f3e04e238
patch 8.2.3322: Vim9: checking type of dict does not check member type
Bram Moolenaar <Bram@vim.org>
parents:
25555
diff
changeset
|
1066 END |
951f3e04e238
patch 8.2.3322: Vim9: checking type of dict does not check member type
Bram Moolenaar <Bram@vim.org>
parents:
25555
diff
changeset
|
1067 CheckDefAndScriptFailure(lines, 'E1013: Argument 2: type mismatch, expected list<bool> but got list<number>', 2) |
23458
d2b1269c2c68
patch 8.2.2272: Vim9: extend() can violate the type of a variable
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1068 enddef |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1069 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1070 def Test_extend_return_type() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1071 var l = extend([1, 2], [3]) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1072 var res = 0 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1073 for n in l |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1074 res += n |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1075 endfor |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1076 res->assert_equal(6) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1077 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1078 |
24118
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1079 def Test_extend_with_error_function() |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1080 var lines =<< trim END |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1081 vim9script |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1082 def F() |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1083 { |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1084 var m = 10 |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1085 } |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1086 echo m |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1087 enddef |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1088 |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1089 def Test() |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1090 var d: dict<any> = {} |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1091 d->extend({A: 10, Func: function('F', [])}) |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1092 enddef |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1093 |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1094 Test() |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1095 END |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1096 CheckScriptFailure(lines, 'E1001: Variable not found: m') |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1097 enddef |
1027495445bc
patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Bram Moolenaar <Bram@vim.org>
parents:
24083
diff
changeset
|
1098 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1099 def Test_extendnew() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1100 assert_equal([1, 2, 'a'], extendnew([1, 2], ['a'])) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1101 assert_equal({one: 1, two: 'a'}, extendnew({one: 1}, {two: 'a'})) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1102 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1103 CheckDefAndScriptFailure(['extendnew({a: 1}, 42)'], ['E1013: Argument 2: type mismatch, expected dict<number> but got number', 'E712: Argument of extendnew() must be a List or Dictionary']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1104 CheckDefAndScriptFailure(['extendnew({a: 1}, [42])'], ['E1013: Argument 2: type mismatch, expected dict<number> but got list<number>', 'E712: Argument of extendnew() must be a List or Dictionary']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1105 CheckDefAndScriptFailure(['extendnew([1, 2], "x")'], ['E1013: Argument 2: type mismatch, expected list<number> but got string', 'E712: Argument of extendnew() must be a List or Dictionary']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1106 CheckDefAndScriptFailure(['extendnew([1, 2], {x: 1})'], ['E1013: Argument 2: type mismatch, expected list<number> but got dict<number>', 'E712: Argument of extendnew() must be a List or Dictionary']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1107 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1108 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1109 def Test_feedkeys() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1110 CheckDefAndScriptFailure(['feedkeys(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1111 CheckDefAndScriptFailure(['feedkeys("x", 10)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1112 CheckDefAndScriptFailure(['feedkeys([], {})'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1113 g:TestVar = 1 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1114 feedkeys(":g:TestVar = 789\n", 'xt') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1115 assert_equal(789, g:TestVar) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1116 unlet g:TestVar |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1117 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1118 |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1119 def Test_filereadable() |
23175
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1120 assert_false(filereadable("")) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1121 assert_false(filereadable(test_null_string())) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1122 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1123 CheckDefExecFailure(['echo filereadable(123)'], 'E1013:') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1124 CheckDefExecFailure(['echo filereadable(true)'], 'E1013:') |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1125 enddef |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1126 |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1127 def Test_filewritable() |
23175
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1128 assert_false(filewritable("")) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1129 assert_false(filewritable(test_null_string())) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1130 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1131 CheckDefExecFailure(['echo filewritable(123)'], 'E1013:') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1132 CheckDefExecFailure(['echo filewritable(true)'], 'E1013:') |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1133 enddef |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1134 |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1135 def Test_finddir() |
25731
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1136 mkdir('Xtestdir') |
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1137 finddir('Xtestdir', '**', -1)->assert_equal(['Xtestdir']) |
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1138 var lines =<< trim END |
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1139 var l: list<string> = finddir('nothing', '*;', -1) |
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1140 END |
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1141 CheckDefAndScriptSuccess(lines) |
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1142 delete('Xtestdir', 'rf') |
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1143 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1144 CheckDefAndScriptFailure(['finddir(true)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1145 CheckDefAndScriptFailure(['finddir(v:null)'], ['E1013: Argument 1: type mismatch, expected string but got special', 'E1174: String required for argument 1']) |
24222
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24210
diff
changeset
|
1146 CheckDefExecFailure(['echo finddir("")'], 'E1175:') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1147 CheckDefAndScriptFailure(['finddir("a", [])'], ['E1013: Argument 2: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1148 CheckDefAndScriptFailure(['finddir("a", "b", "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1149 finddir('abc', '')->assert_equal('') |
26686
c04b28fad0cc
patch 8.2.3872: Vim9: finddir() and uniq() return types can be more specific
Bram Moolenaar <Bram@vim.org>
parents:
26656
diff
changeset
|
1150 |
c04b28fad0cc
patch 8.2.3872: Vim9: finddir() and uniq() return types can be more specific
Bram Moolenaar <Bram@vim.org>
parents:
26656
diff
changeset
|
1151 CheckDefFailure(['var s: list<string> = finddir("foo")'], 'E1012: Type mismatch; expected list<string> but got string') |
c04b28fad0cc
patch 8.2.3872: Vim9: finddir() and uniq() return types can be more specific
Bram Moolenaar <Bram@vim.org>
parents:
26656
diff
changeset
|
1152 CheckDefFailure(['var s: list<string> = finddir("foo", "path")'], 'E1012: Type mismatch; expected list<string> but got string') |
c04b28fad0cc
patch 8.2.3872: Vim9: finddir() and uniq() return types can be more specific
Bram Moolenaar <Bram@vim.org>
parents:
26656
diff
changeset
|
1153 # with third argument only runtime type checking |
c04b28fad0cc
patch 8.2.3872: Vim9: finddir() and uniq() return types can be more specific
Bram Moolenaar <Bram@vim.org>
parents:
26656
diff
changeset
|
1154 CheckDefCompileSuccess(['var s: list<string> = finddir("foo", "path", 1)']) |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1155 enddef |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1156 |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1157 def Test_findfile() |
25731
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1158 findfile('runtest.vim', '**', -1)->assert_equal(['runtest.vim']) |
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1159 var lines =<< trim END |
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1160 var l: list<string> = findfile('nothing', '*;', -1) |
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1161 END |
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1162 CheckDefAndScriptSuccess(lines) |
f35efe44dacd
patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Bram Moolenaar <Bram@vim.org>
parents:
25692
diff
changeset
|
1163 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
1164 CheckDefExecFailure(['findfile(true)'], 'E1013: Argument 1: type mismatch, expected string but got bool') |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
1165 CheckDefExecFailure(['findfile(v:null)'], 'E1013: Argument 1: type mismatch, expected string but got special') |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
1166 CheckDefExecFailure(['findfile("")'], 'E1175:') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1167 CheckDefAndScriptFailure(['findfile("a", [])'], ['E1013: Argument 2: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1168 CheckDefAndScriptFailure(['findfile("a", "b", "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1169 findfile('abc', '')->assert_equal('') |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1170 enddef |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1171 |
25784
8dfcee931c6c
patch 8.2.3427: double free when list is copied
Bram Moolenaar <Bram@vim.org>
parents:
25759
diff
changeset
|
1172 def Test_flatten() |
8dfcee931c6c
patch 8.2.3427: double free when list is copied
Bram Moolenaar <Bram@vim.org>
parents:
25759
diff
changeset
|
1173 var lines =<< trim END |
8dfcee931c6c
patch 8.2.3427: double free when list is copied
Bram Moolenaar <Bram@vim.org>
parents:
25759
diff
changeset
|
1174 echo flatten([1, 2, 3]) |
8dfcee931c6c
patch 8.2.3427: double free when list is copied
Bram Moolenaar <Bram@vim.org>
parents:
25759
diff
changeset
|
1175 END |
8dfcee931c6c
patch 8.2.3427: double free when list is copied
Bram Moolenaar <Bram@vim.org>
parents:
25759
diff
changeset
|
1176 CheckDefAndScriptFailure(lines, 'E1158:') |
8dfcee931c6c
patch 8.2.3427: double free when list is copied
Bram Moolenaar <Bram@vim.org>
parents:
25759
diff
changeset
|
1177 enddef |
8dfcee931c6c
patch 8.2.3427: double free when list is copied
Bram Moolenaar <Bram@vim.org>
parents:
25759
diff
changeset
|
1178 |
23816
525c9e218c69
patch 8.2.2449: Vim9: flatten() always changes the list type
Bram Moolenaar <Bram@vim.org>
parents:
23804
diff
changeset
|
1179 def Test_flattennew() |
525c9e218c69
patch 8.2.2449: Vim9: flatten() always changes the list type
Bram Moolenaar <Bram@vim.org>
parents:
23804
diff
changeset
|
1180 var lines =<< trim END |
525c9e218c69
patch 8.2.2449: Vim9: flatten() always changes the list type
Bram Moolenaar <Bram@vim.org>
parents:
23804
diff
changeset
|
1181 var l = [1, [2, [3, 4]], 5] |
525c9e218c69
patch 8.2.2449: Vim9: flatten() always changes the list type
Bram Moolenaar <Bram@vim.org>
parents:
23804
diff
changeset
|
1182 call assert_equal([1, 2, 3, 4, 5], flattennew(l)) |
525c9e218c69
patch 8.2.2449: Vim9: flatten() always changes the list type
Bram Moolenaar <Bram@vim.org>
parents:
23804
diff
changeset
|
1183 call assert_equal([1, [2, [3, 4]], 5], l) |
525c9e218c69
patch 8.2.2449: Vim9: flatten() always changes the list type
Bram Moolenaar <Bram@vim.org>
parents:
23804
diff
changeset
|
1184 |
525c9e218c69
patch 8.2.2449: Vim9: flatten() always changes the list type
Bram Moolenaar <Bram@vim.org>
parents:
23804
diff
changeset
|
1185 call assert_equal([1, 2, [3, 4], 5], flattennew(l, 1)) |
525c9e218c69
patch 8.2.2449: Vim9: flatten() always changes the list type
Bram Moolenaar <Bram@vim.org>
parents:
23804
diff
changeset
|
1186 call assert_equal([1, [2, [3, 4]], 5], l) |
25784
8dfcee931c6c
patch 8.2.3427: double free when list is copied
Bram Moolenaar <Bram@vim.org>
parents:
25759
diff
changeset
|
1187 |
8dfcee931c6c
patch 8.2.3427: double free when list is copied
Bram Moolenaar <Bram@vim.org>
parents:
25759
diff
changeset
|
1188 var ll: list<list<string>> = [['a', 'b', 'c']] |
8dfcee931c6c
patch 8.2.3427: double free when list is copied
Bram Moolenaar <Bram@vim.org>
parents:
25759
diff
changeset
|
1189 assert_equal(['a', 'b', 'c'], ll->flattennew()) |
23816
525c9e218c69
patch 8.2.2449: Vim9: flatten() always changes the list type
Bram Moolenaar <Bram@vim.org>
parents:
23804
diff
changeset
|
1190 END |
525c9e218c69
patch 8.2.2449: Vim9: flatten() always changes the list type
Bram Moolenaar <Bram@vim.org>
parents:
23804
diff
changeset
|
1191 CheckDefAndScriptSuccess(lines) |
525c9e218c69
patch 8.2.2449: Vim9: flatten() always changes the list type
Bram Moolenaar <Bram@vim.org>
parents:
23804
diff
changeset
|
1192 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1193 CheckDefAndScriptFailure(['flattennew({})'], ['E1013: Argument 1: type mismatch, expected list<any> but got dict<unknown>', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1194 CheckDefAndScriptFailure(['flattennew([], "1")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
23816
525c9e218c69
patch 8.2.2449: Vim9: flatten() always changes the list type
Bram Moolenaar <Bram@vim.org>
parents:
23804
diff
changeset
|
1195 enddef |
525c9e218c69
patch 8.2.2449: Vim9: flatten() always changes the list type
Bram Moolenaar <Bram@vim.org>
parents:
23804
diff
changeset
|
1196 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1197 " Test for float functions argument type |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1198 def Test_float_funcs_args() |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1199 CheckFeature float |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1200 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1201 # acos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1202 CheckDefAndScriptFailure(['acos("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1203 # asin() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1204 CheckDefAndScriptFailure(['asin("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1205 # atan() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1206 CheckDefAndScriptFailure(['atan("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1207 # atan2() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1208 CheckDefAndScriptFailure(['atan2("a", 1.1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1209 CheckDefAndScriptFailure(['atan2(1.2, "a")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1210 CheckDefAndScriptFailure(['atan2(1.2)'], ['E119:', 'E119:']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1211 # ceil() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1212 CheckDefAndScriptFailure(['ceil("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1213 # cos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1214 CheckDefAndScriptFailure(['cos("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1215 # cosh() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1216 CheckDefAndScriptFailure(['cosh("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1217 # exp() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1218 CheckDefAndScriptFailure(['exp("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1219 # float2nr() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1220 CheckDefAndScriptFailure(['float2nr("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1221 # floor() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1222 CheckDefAndScriptFailure(['floor("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1223 # fmod() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1224 CheckDefAndScriptFailure(['fmod(1.1, "a")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1225 CheckDefAndScriptFailure(['fmod("a", 1.1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1226 CheckDefAndScriptFailure(['fmod(1.1)'], ['E119:', 'E119:']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1227 # isinf() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1228 CheckDefAndScriptFailure(['isinf("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1229 # isnan() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1230 CheckDefAndScriptFailure(['isnan("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1231 # log() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1232 CheckDefAndScriptFailure(['log("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1233 # log10() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1234 CheckDefAndScriptFailure(['log10("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1235 # pow() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1236 CheckDefAndScriptFailure(['pow("a", 1.1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1237 CheckDefAndScriptFailure(['pow(1.1, "a")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1238 CheckDefAndScriptFailure(['pow(1.1)'], ['E119:', 'E119:']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1239 # round() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1240 CheckDefAndScriptFailure(['round("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1241 # sin() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1242 CheckDefAndScriptFailure(['sin("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1243 # sinh() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1244 CheckDefAndScriptFailure(['sinh("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1245 # sqrt() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1246 CheckDefAndScriptFailure(['sqrt("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1247 # tan() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1248 CheckDefAndScriptFailure(['tan("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1249 # tanh() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1250 CheckDefAndScriptFailure(['tanh("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1251 # trunc() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1252 CheckDefAndScriptFailure(['trunc("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1253 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1254 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1255 def Test_fnameescape() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1256 CheckDefAndScriptFailure(['fnameescape(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1257 assert_equal('\+a\%b\|', fnameescape('+a%b|')) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1258 fnameescape('')->assert_equal('') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1259 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1260 |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1261 def Test_fnamemodify() |
23175
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1262 CheckDefSuccess(['echo fnamemodify(test_null_string(), ":p")']) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1263 CheckDefSuccess(['echo fnamemodify("", ":p")']) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1264 CheckDefSuccess(['echo fnamemodify("file", test_null_string())']) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1265 CheckDefSuccess(['echo fnamemodify("file", "")']) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1266 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1267 CheckDefExecFailure(['echo fnamemodify(true, ":p")'], 'E1013: Argument 1: type mismatch, expected string but got bool') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1268 CheckDefExecFailure(['echo fnamemodify(v:null, ":p")'], 'E1013: Argument 1: type mismatch, expected string but got special') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1269 CheckDefExecFailure(['echo fnamemodify("file", true)'], 'E1013: Argument 2: type mismatch, expected string but got bool') |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1270 enddef |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1271 |
23827
7e0d8f1cae7d
patch 8.2.2455: Vim9: key type for literal dict and indexing is inconsistent
Bram Moolenaar <Bram@vim.org>
parents:
23816
diff
changeset
|
1272 def Wrong_dict_key_type(items: list<number>): list<number> |
7e0d8f1cae7d
patch 8.2.2455: Vim9: key type for literal dict and indexing is inconsistent
Bram Moolenaar <Bram@vim.org>
parents:
23816
diff
changeset
|
1273 return filter(items, (_, val) => get({[val]: 1}, 'x')) |
7e0d8f1cae7d
patch 8.2.2455: Vim9: key type for literal dict and indexing is inconsistent
Bram Moolenaar <Bram@vim.org>
parents:
23816
diff
changeset
|
1274 enddef |
7e0d8f1cae7d
patch 8.2.2455: Vim9: key type for literal dict and indexing is inconsistent
Bram Moolenaar <Bram@vim.org>
parents:
23816
diff
changeset
|
1275 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
1276 def Test_filter() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1277 CheckDefAndScriptFailure(['filter(1.1, "1")'], ['E1013: Argument 1: type mismatch, expected list<any> but got float', 'E1251: List, Dictionary, Blob or String required for argument 1']) |
27392
ec2ba9acec1b
patch 8.2.4224: Vim9: no error when using a number for map() second argument
Bram Moolenaar <Bram@vim.org>
parents:
27225
diff
changeset
|
1278 CheckDefAndScriptFailure(['filter([1, 2], 4)'], ['E1256: String or function required for argument 2', 'E1024: Using a Number as a String']) |
26737
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
1279 |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
1280 var lines =<< trim END |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
1281 def F(i: number, v: any): string |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
1282 return 'bad' |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
1283 enddef |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
1284 echo filter([1, 2, 3], F) |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
1285 END |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
1286 CheckDefAndScriptFailure(lines, ['E1013: Argument 2: type mismatch, expected func(...): bool', 'E1135: Using a String as a Bool:']) |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
1287 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
1288 assert_equal([], filter([1, 2, 3], '0')) |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
1289 assert_equal([1, 2, 3], filter([1, 2, 3], '1')) |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
1290 assert_equal({b: 20}, filter({a: 10, b: 20}, 'v:val == 20')) |
26765
e5fdd48c442b
patch 8.2.3911: Vim9: type check for filter() does not accept unknown
Bram Moolenaar <Bram@vim.org>
parents:
26763
diff
changeset
|
1291 |
e5fdd48c442b
patch 8.2.3911: Vim9: type check for filter() does not accept unknown
Bram Moolenaar <Bram@vim.org>
parents:
26763
diff
changeset
|
1292 def GetFiltered(): list<number> |
e5fdd48c442b
patch 8.2.3911: Vim9: type check for filter() does not accept unknown
Bram Moolenaar <Bram@vim.org>
parents:
26763
diff
changeset
|
1293 var Odd: func = (_, v) => v % 2 |
e5fdd48c442b
patch 8.2.3911: Vim9: type check for filter() does not accept unknown
Bram Moolenaar <Bram@vim.org>
parents:
26763
diff
changeset
|
1294 return range(3)->filter(Odd) |
e5fdd48c442b
patch 8.2.3911: Vim9: type check for filter() does not accept unknown
Bram Moolenaar <Bram@vim.org>
parents:
26763
diff
changeset
|
1295 enddef |
e5fdd48c442b
patch 8.2.3911: Vim9: type check for filter() does not accept unknown
Bram Moolenaar <Bram@vim.org>
parents:
26763
diff
changeset
|
1296 assert_equal([1], GetFiltered()) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
1297 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
1298 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1299 def Test_filter_wrong_dict_key_type() |
23827
7e0d8f1cae7d
patch 8.2.2455: Vim9: key type for literal dict and indexing is inconsistent
Bram Moolenaar <Bram@vim.org>
parents:
23816
diff
changeset
|
1300 assert_fails('Wrong_dict_key_type([1, v:null, 3])', 'E1013:') |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1301 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1302 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1303 def Test_filter_return_type() |
24414
f539864ba851
patch 8.2.2747: Vim9: not always an error for too many function arguments
Bram Moolenaar <Bram@vim.org>
parents:
24349
diff
changeset
|
1304 var l = filter([1, 2, 3], (_, _) => 1) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1305 var res = 0 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1306 for n in l |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1307 res += n |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1308 endfor |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1309 res->assert_equal(6) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1310 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1311 |
23350
9b86957ddd95
patch 8.2.2218: Vim9: failure if passing more args to lambda than expected
Bram Moolenaar <Bram@vim.org>
parents:
23276
diff
changeset
|
1312 def Test_filter_missing_argument() |
9b86957ddd95
patch 8.2.2218: Vim9: failure if passing more args to lambda than expected
Bram Moolenaar <Bram@vim.org>
parents:
23276
diff
changeset
|
1313 var dict = {aa: [1], ab: [2], ac: [3], de: [4]} |
24414
f539864ba851
patch 8.2.2747: Vim9: not always an error for too many function arguments
Bram Moolenaar <Bram@vim.org>
parents:
24349
diff
changeset
|
1314 var res = dict->filter((k, _) => k =~ 'a' && k !~ 'b') |
23350
9b86957ddd95
patch 8.2.2218: Vim9: failure if passing more args to lambda than expected
Bram Moolenaar <Bram@vim.org>
parents:
23276
diff
changeset
|
1315 res->assert_equal({aa: [1], ac: [3]}) |
9b86957ddd95
patch 8.2.2218: Vim9: failure if passing more args to lambda than expected
Bram Moolenaar <Bram@vim.org>
parents:
23276
diff
changeset
|
1316 enddef |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1317 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1318 def Test_foldclosed() |
26656
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1319 CheckDefAndScriptFailure(['foldclosed(function("min"))'], ['E1013: Argument 1: type mismatch, expected string but got func(...): unknown', 'E1220: String or Number required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
1320 CheckDefExecAndScriptFailure(['foldclosed("")'], 'E1209: Invalid value for a line number') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1321 assert_equal(-1, foldclosed(1)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1322 assert_equal(-1, foldclosed('$')) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1323 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1324 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1325 def Test_foldclosedend() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1326 CheckDefAndScriptFailure(['foldclosedend(true)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
1327 CheckDefExecAndScriptFailure(['foldclosedend("")'], 'E1209: Invalid value for a line number') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1328 assert_equal(-1, foldclosedend(1)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1329 assert_equal(-1, foldclosedend('w0')) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1330 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1331 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1332 def Test_foldlevel() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1333 CheckDefAndScriptFailure(['foldlevel(0z10)'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1220: String or Number required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
1334 CheckDefExecAndScriptFailure(['foldlevel("")'], 'E1209: Invalid value for a line number') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1335 assert_equal(0, foldlevel(1)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1336 assert_equal(0, foldlevel('.')) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1337 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1338 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1339 def Test_foldtextresult() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1340 CheckDefAndScriptFailure(['foldtextresult(1.1)'], ['E1013: Argument 1: type mismatch, expected string but got float', 'E1220: String or Number required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
1341 CheckDefExecAndScriptFailure(['foldtextresult("")'], 'E1209: Invalid value for a line number') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1342 assert_equal('', foldtextresult(1)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1343 assert_equal('', foldtextresult('.')) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1344 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1345 |
24699
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1346 def Test_fullcommand() |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1347 assert_equal('next', fullcommand('n')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1348 assert_equal('noremap', fullcommand('no')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1349 assert_equal('noremap', fullcommand('nor')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1350 assert_equal('normal', fullcommand('norm')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1351 |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1352 assert_equal('', fullcommand('k')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1353 assert_equal('keepmarks', fullcommand('ke')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1354 assert_equal('keepmarks', fullcommand('kee')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1355 assert_equal('keepmarks', fullcommand('keep')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1356 assert_equal('keepjumps', fullcommand('keepj')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1357 |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1358 assert_equal('dlist', fullcommand('dl')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1359 assert_equal('', fullcommand('dp')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1360 assert_equal('delete', fullcommand('del')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1361 assert_equal('', fullcommand('dell')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1362 assert_equal('', fullcommand('delp')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1363 |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1364 assert_equal('srewind', fullcommand('sre')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1365 assert_equal('scriptnames', fullcommand('scr')) |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1366 assert_equal('', fullcommand('scg')) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
1367 fullcommand('')->assert_equal('') |
24699
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1368 enddef |
b19c8150ee9d
patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Bram Moolenaar <Bram@vim.org>
parents:
24695
diff
changeset
|
1369 |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
1370 def Test_funcref() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1371 CheckDefAndScriptFailure(['funcref("reverse", 2)'], ['E1013: Argument 2: type mismatch, expected list<any> but got number', 'E1211: List required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1372 CheckDefAndScriptFailure(['funcref("reverse", [2], [1])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 3']) |
26656
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1373 |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1374 var lines =<< trim END |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1375 vim9script |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1376 def UseBool(b: bool) |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1377 enddef |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1378 def GetRefOk() |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1379 var Ref1: func(bool) = funcref(UseBool) |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1380 var Ref2: func(bool) = funcref('UseBool') |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1381 enddef |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1382 def GetRefBad() |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1383 # only fails at runtime |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1384 var Ref1: func(number) = funcref(UseBool) |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1385 enddef |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1386 defcompile |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1387 GetRefOk() |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1388 END |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1389 CheckScriptSuccess(lines) |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1390 |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1391 lines =<< trim END |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1392 vim9script |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1393 def UseBool(b: bool) |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1394 enddef |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1395 def GetRefBad() |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1396 # only fails at runtime |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1397 var Ref1: func(number) = funcref(UseBool) |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1398 enddef |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1399 GetRefBad() |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1400 END |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1401 CheckScriptFailure(lines, 'E1012: Type mismatch; expected func(number) but got func(bool)') |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
1402 enddef |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
1403 |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
1404 def Test_function() |
26733
3aa38eaa5a11
patch 8.2.3895: Vim9: confusing error when using function() with a number
Bram Moolenaar <Bram@vim.org>
parents:
26731
diff
changeset
|
1405 CheckDefExecAndScriptFailure(['function(123)'], 'E1256: String or function required for argument 1') |
3aa38eaa5a11
patch 8.2.3895: Vim9: confusing error when using function() with a number
Bram Moolenaar <Bram@vim.org>
parents:
26731
diff
changeset
|
1406 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1407 CheckDefAndScriptFailure(['function("reverse", 2)'], ['E1013: Argument 2: type mismatch, expected list<any> but got number', 'E1211: List required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1408 CheckDefAndScriptFailure(['function("reverse", [2], [1])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 3']) |
26656
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1409 |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1410 var lines =<< trim END |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1411 vim9script |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1412 def UseBool(b: bool) |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1413 enddef |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1414 def GetRefOk() |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1415 var Ref1: func(bool) = function(UseBool) |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1416 var Ref2: func(bool) = function('UseBool') |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1417 enddef |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1418 def GetRefBad() |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1419 # only fails at runtime |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1420 var Ref1: func(number) = function(UseBool) |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1421 enddef |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1422 defcompile |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1423 GetRefOk() |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1424 END |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1425 CheckScriptSuccess(lines) |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1426 |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1427 lines =<< trim END |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1428 vim9script |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1429 def UseBool(b: bool) |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1430 enddef |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1431 def GetRefBad() |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1432 # only fails at runtime |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1433 var Ref1: func(number) = function(UseBool) |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1434 enddef |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1435 GetRefBad() |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1436 END |
ab46f0976435
patch 8.2.3857: Vim9: inconsistent error for using function()
Bram Moolenaar <Bram@vim.org>
parents:
26650
diff
changeset
|
1437 CheckScriptFailure(lines, 'E1012: Type mismatch; expected func(number) but got func(bool)') |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
1438 enddef |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
1439 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1440 def Test_garbagecollect() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1441 garbagecollect(true) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1442 CheckDefAndScriptFailure(['garbagecollect("1")'], ['E1013: Argument 1: type mismatch, expected bool but got string', 'E1212: Bool required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1443 CheckDefAndScriptFailure(['garbagecollect(20)'], ['E1013: Argument 1: type mismatch, expected bool but got number', 'E1212: Bool required for argument 1']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1444 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1445 |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
1446 def Test_get() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1447 CheckDefAndScriptFailure(['get("a", 1)'], ['E1013: Argument 1: type mismatch, expected list<any> but got string', 'E896: Argument of get() must be a List, Dictionary or Blob']) |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
1448 [3, 5, 2]->get(1)->assert_equal(5) |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
1449 [3, 5, 2]->get(3)->assert_equal(0) |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
1450 [3, 5, 2]->get(3, 9)->assert_equal(9) |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
1451 assert_equal(get(0z102030, 2), 0x30) |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
1452 {a: 7, b: 11, c: 13}->get('c')->assert_equal(13) |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
1453 {10: 'a', 20: 'b', 30: 'd'}->get(20)->assert_equal('b') |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
1454 function('max')->get('name')->assert_equal('max') |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
1455 var F: func = function('min', [[5, 8, 6]]) |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
1456 F->get('name')->assert_equal('min') |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
1457 F->get('args')->assert_equal([[5, 8, 6]]) |
25386
9c749ad22565
patch 8.2.3230: Vim9: type error when function return type is not known yet
Bram Moolenaar <Bram@vim.org>
parents:
25384
diff
changeset
|
1458 |
9c749ad22565
patch 8.2.3230: Vim9: type error when function return type is not known yet
Bram Moolenaar <Bram@vim.org>
parents:
25384
diff
changeset
|
1459 var lines =<< trim END |
9c749ad22565
patch 8.2.3230: Vim9: type error when function return type is not known yet
Bram Moolenaar <Bram@vim.org>
parents:
25384
diff
changeset
|
1460 vim9script |
9c749ad22565
patch 8.2.3230: Vim9: type error when function return type is not known yet
Bram Moolenaar <Bram@vim.org>
parents:
25384
diff
changeset
|
1461 def DoThat(): number |
9c749ad22565
patch 8.2.3230: Vim9: type error when function return type is not known yet
Bram Moolenaar <Bram@vim.org>
parents:
25384
diff
changeset
|
1462 var Getqflist: func = function('getqflist', [{id: 42}]) |
9c749ad22565
patch 8.2.3230: Vim9: type error when function return type is not known yet
Bram Moolenaar <Bram@vim.org>
parents:
25384
diff
changeset
|
1463 return Getqflist()->get('id', 77) |
9c749ad22565
patch 8.2.3230: Vim9: type error when function return type is not known yet
Bram Moolenaar <Bram@vim.org>
parents:
25384
diff
changeset
|
1464 enddef |
9c749ad22565
patch 8.2.3230: Vim9: type error when function return type is not known yet
Bram Moolenaar <Bram@vim.org>
parents:
25384
diff
changeset
|
1465 assert_equal(0, DoThat()) |
9c749ad22565
patch 8.2.3230: Vim9: type error when function return type is not known yet
Bram Moolenaar <Bram@vim.org>
parents:
25384
diff
changeset
|
1466 END |
9c749ad22565
patch 8.2.3230: Vim9: type error when function return type is not known yet
Bram Moolenaar <Bram@vim.org>
parents:
25384
diff
changeset
|
1467 CheckScriptSuccess(lines) |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
1468 enddef |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
1469 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1470 def Test_getbufinfo() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1471 var bufinfo = getbufinfo(bufnr()) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1472 getbufinfo('%')->assert_equal(bufinfo) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1473 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1474 edit Xtestfile1 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1475 hide edit Xtestfile2 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1476 hide enew |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
1477 getbufinfo({bufloaded: true, buflisted: true, bufmodified: false}) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1478 ->len()->assert_equal(3) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1479 bwipe Xtestfile1 Xtestfile2 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1480 CheckDefAndScriptFailure(['getbufinfo(true)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1174: String required for argument 1']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1481 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1482 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1483 def Test_getbufline() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1484 e SomeFile |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1485 var buf = bufnr() |
25654
ef38fc02faaa
patch 8.2.3363: when :edit reuses the current buffer the alternate file is set
Bram Moolenaar <Bram@vim.org>
parents:
25640
diff
changeset
|
1486 sp Otherfile |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1487 var lines = ['aaa', 'bbb', 'ccc'] |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1488 setbufline(buf, 1, lines) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1489 getbufline('#', 1, '$')->assert_equal(lines) |
22679
9fa3f92248f6
patch 8.2.1888: Vim9: getbufline(-1, 1, '$') gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22661
diff
changeset
|
1490 getbufline(-1, '$', '$')->assert_equal([]) |
9fa3f92248f6
patch 8.2.1888: Vim9: getbufline(-1, 1, '$') gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22661
diff
changeset
|
1491 getbufline(-1, 1, '$')->assert_equal([]) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1492 |
26782
b7b82279426f
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
Bram Moolenaar <Bram@vim.org>
parents:
26775
diff
changeset
|
1493 assert_fails('getbufline("", "$a", "$b")', ['E1030: Using a String as a Number: "$a"', 'E1030: Using a String as a Number: "$a"']) |
b7b82279426f
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
Bram Moolenaar <Bram@vim.org>
parents:
26775
diff
changeset
|
1494 assert_fails('getbufline("", "$", "$b")', ['E1030: Using a String as a Number: "$b"', 'E1030: Using a String as a Number: "$b"']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1495 bwipe! |
26782
b7b82279426f
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
Bram Moolenaar <Bram@vim.org>
parents:
26775
diff
changeset
|
1496 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1497 CheckDefAndScriptFailure(['getbufline([], 2)'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1498 CheckDefAndScriptFailure(['getbufline("a", [])'], ['E1013: Argument 2: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1499 CheckDefAndScriptFailure(['getbufline("a", 2, 0z10)'], ['E1013: Argument 3: type mismatch, expected string but got blob', 'E1220: String or Number required for argument 3']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1500 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1501 |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
1502 def Test_getbufvar() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1503 CheckDefAndScriptFailure(['getbufvar(true, "v")'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1504 CheckDefAndScriptFailure(['getbufvar(1, 2, 3)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
1505 enddef |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
1506 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1507 def Test_getchangelist() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1508 new |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1509 setline(1, 'some text') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1510 var changelist = bufnr()->getchangelist() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1511 getchangelist('%')->assert_equal(changelist) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1512 bwipe! |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1513 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1514 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1515 def Test_getchar() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1516 while getchar(0) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1517 endwhile |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1518 getchar(true)->assert_equal(0) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1519 getchar(1)->assert_equal(0) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1520 CheckDefAndScriptFailure(['getchar(2)'], ['E1013: Argument 1: type mismatch, expected bool but got number', 'E1212: Bool required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1521 CheckDefAndScriptFailure(['getchar("1")'], ['E1013: Argument 1: type mismatch, expected bool but got string', 'E1212: Bool required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1522 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1523 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1524 def Test_getcharpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1525 CheckDefAndScriptFailure(['getcharpos(true)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1526 CheckDefAndScriptFailure(['getcharpos(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
1527 CheckDefExecAndScriptFailure(['getcharpos("")'], 'E1209: Invalid value for a line number') |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1528 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1529 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1530 def Test_getcharstr() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1531 CheckDefAndScriptFailure(['getcharstr(2)'], ['E1013: Argument 1: type mismatch, expected bool but got number', 'E1212: Bool required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1532 CheckDefAndScriptFailure(['getcharstr("1")'], ['E1013: Argument 1: type mismatch, expected bool but got string', 'E1212: Bool required for argument 1']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1533 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1534 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1535 def Test_getcompletion() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1536 set wildignore=*.vim,*~ |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1537 var l = getcompletion('run', 'file', true) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1538 l->assert_equal([]) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1539 set wildignore& |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1540 CheckDefAndScriptFailure(['getcompletion(1, "b")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1541 CheckDefAndScriptFailure(['getcompletion("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1542 CheckDefAndScriptFailure(['getcompletion("a", "b", 2)'], ['E1013: Argument 3: type mismatch, expected bool but got number', 'E1212: Bool required for argument 3']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
1543 CheckDefExecAndScriptFailure(['getcompletion("a", "")'], 'E475: Invalid argument') |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
1544 getcompletion('', 'messages')->assert_equal(['clear']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1545 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1546 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1547 def Test_getcurpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1548 CheckDefAndScriptFailure(['getcurpos("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1549 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1550 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1551 def Test_getcursorcharpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1552 CheckDefAndScriptFailure(['getcursorcharpos("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1553 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1554 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1555 def Test_getcwd() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1556 CheckDefAndScriptFailure(['getcwd("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1557 CheckDefAndScriptFailure(['getcwd("x", 1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1558 CheckDefAndScriptFailure(['getcwd(1, "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1559 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1560 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1561 def Test_getenv() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1562 if getenv('does-not_exist') == '' |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1563 assert_report('getenv() should return null') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1564 endif |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1565 if getenv('does-not_exist') == null |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1566 else |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1567 assert_report('getenv() should return null') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1568 endif |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1569 $SOMEENVVAR = 'some' |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1570 assert_equal('some', getenv('SOMEENVVAR')) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1571 unlet $SOMEENVVAR |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1572 getenv('')->assert_equal(v:null) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1573 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1574 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1575 def Test_getfontname() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1576 CheckDefAndScriptFailure(['getfontname(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1577 #getfontname('')->assert_equal('') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1578 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1579 |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1580 def Test_getfperm() |
23175
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1581 assert_equal('', getfperm("")) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1582 assert_equal('', getfperm(test_null_string())) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1583 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1584 CheckDefExecFailure(['echo getfperm(true)'], 'E1013:') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1585 CheckDefExecFailure(['echo getfperm(v:null)'], 'E1013:') |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1586 enddef |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1587 |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1588 def Test_getfsize() |
23175
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1589 assert_equal(-1, getfsize("")) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1590 assert_equal(-1, getfsize(test_null_string())) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1591 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1592 CheckDefExecFailure(['echo getfsize(true)'], 'E1013:') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1593 CheckDefExecFailure(['echo getfsize(v:null)'], 'E1013:') |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1594 enddef |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1595 |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1596 def Test_getftime() |
23175
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1597 assert_equal(-1, getftime("")) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1598 assert_equal(-1, getftime(test_null_string())) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1599 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1600 CheckDefExecFailure(['echo getftime(true)'], 'E1013:') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1601 CheckDefExecFailure(['echo getftime(v:null)'], 'E1013:') |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1602 enddef |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1603 |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1604 def Test_getftype() |
23175
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1605 assert_equal('', getftype("")) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1606 assert_equal('', getftype(test_null_string())) |
d7294a6220ac
patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Bram Moolenaar <Bram@vim.org>
parents:
23142
diff
changeset
|
1607 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1608 CheckDefExecFailure(['echo getftype(true)'], 'E1013:') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1609 CheckDefExecFailure(['echo getftype(v:null)'], 'E1013:') |
23142
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1610 enddef |
5f08d4a42898
patch 8.2.2117: some functions use any value as a string
Bram Moolenaar <Bram@vim.org>
parents:
23104
diff
changeset
|
1611 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1612 def Test_getjumplist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1613 CheckDefAndScriptFailure(['getjumplist("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1614 CheckDefAndScriptFailure(['getjumplist("x", 1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1615 CheckDefAndScriptFailure(['getjumplist(1, "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1616 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1617 |
25216
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1618 def Test_getline() |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1619 var lines =<< trim END |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1620 new |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1621 setline(1, ['hello', 'there', 'again']) |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1622 assert_equal('hello', getline(1)) |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1623 assert_equal('hello', getline('.')) |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1624 |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1625 normal 2Gvjv |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1626 assert_equal('there', getline("'<")) |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1627 assert_equal('again', getline("'>")) |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1628 END |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1629 CheckDefAndScriptSuccess(lines) |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1630 |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1631 lines =<< trim END |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1632 echo getline('1') |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1633 END |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1634 CheckDefExecAndScriptFailure(lines, 'E1209:') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1635 CheckDefAndScriptFailure(['getline(true)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1636 CheckDefAndScriptFailure(['getline(1, true)'], ['E1013: Argument 2: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
1637 CheckDefExecAndScriptFailure(['getline("")'], 'E1209: Invalid value for a line number') |
25216
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1638 enddef |
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1639 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1640 def Test_getloclist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1641 CheckDefAndScriptFailure(['getloclist("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1642 CheckDefAndScriptFailure(['getloclist(1, [])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1643 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1644 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1645 def Test_getloclist_return_type() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1646 var l = getloclist(1) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1647 l->assert_equal([]) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1648 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1649 var d = getloclist(1, {items: 0}) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1650 d->assert_equal({items: []}) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1651 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1652 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1653 def Test_getmarklist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1654 CheckDefAndScriptFailure(['getmarklist([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1655 assert_equal([], getmarklist(10000)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1656 assert_fails('getmarklist("a%b@#")', 'E94:') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1657 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1658 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1659 def Test_getmatches() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1660 CheckDefAndScriptFailure(['getmatches("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1661 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1662 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1663 def Test_getpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1664 CheckDefAndScriptFailure(['getpos(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1665 assert_equal([0, 1, 1, 0], getpos('.')) |
25216
9ead67e3c696
patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Bram Moolenaar <Bram@vim.org>
parents:
25212
diff
changeset
|
1666 CheckDefExecFailure(['getpos("a")'], 'E1209:') |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
1667 CheckDefExecAndScriptFailure(['getpos("")'], 'E1209: Invalid value for a line number') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1668 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1669 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1670 def Test_getqflist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1671 CheckDefAndScriptFailure(['getqflist([])'], ['E1013: Argument 1: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1672 call assert_equal({}, getqflist({})) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1673 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1674 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1675 def Test_getqflist_return_type() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1676 var l = getqflist() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1677 l->assert_equal([]) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1678 |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
1679 var d = getqflist({items: 0}) |
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
1680 d->assert_equal({items: []}) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1681 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1682 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1683 def Test_getreg() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1684 var lines = ['aaa', 'bbb', 'ccc'] |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1685 setreg('a', lines) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1686 getreg('a', true, true)->assert_equal(lines) |
23909
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1687 assert_fails('getreg("ab")', 'E1162:') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1688 CheckDefAndScriptFailure(['getreg(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1689 CheckDefAndScriptFailure(['getreg(".", 2)'], ['E1013: Argument 2: type mismatch, expected bool but got number', 'E1212: Bool required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1690 CheckDefAndScriptFailure(['getreg(".", 1, "b")'], ['E1013: Argument 3: type mismatch, expected bool but got string', 'E1212: Bool required for argument 3']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1691 @" = 'A1B2C3' |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1692 getreg('')->assert_equal('A1B2C3') |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1693 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1694 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1695 def Test_getreg_return_type() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1696 var s1: string = getreg('"') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1697 var s2: string = getreg('"', 1) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1698 var s3: list<string> = getreg('"', 1, 1) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1699 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1700 |
23909
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1701 def Test_getreginfo() |
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1702 var text = 'abc' |
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1703 setreg('a', text) |
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1704 getreginfo('a')->assert_equal({regcontents: [text], regtype: 'v', isunnamed: false}) |
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1705 assert_fails('getreginfo("ab")', 'E1162:') |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1706 @" = 'D1E2F3' |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1707 getreginfo('').regcontents->assert_equal(['D1E2F3']) |
23909
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1708 enddef |
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1709 |
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1710 def Test_getregtype() |
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1711 var lines = ['aaa', 'bbb', 'ccc'] |
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1712 setreg('a', lines) |
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1713 getregtype('a')->assert_equal('V') |
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1714 assert_fails('getregtype("ab")', 'E1162:') |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1715 setreg('"', 'ABCD', 'b') |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1716 getregtype('')->assert_equal("\<C-V>4") |
23909
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1717 enddef |
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
1718 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1719 def Test_gettabinfo() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1720 CheckDefAndScriptFailure(['gettabinfo("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1721 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1722 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1723 def Test_gettabvar() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1724 CheckDefAndScriptFailure(['gettabvar("a", "b")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1725 CheckDefAndScriptFailure(['gettabvar(1, 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1726 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1727 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1728 def Test_gettabwinvar() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1729 CheckDefAndScriptFailure(['gettabwinvar("a", 2, "c")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1730 CheckDefAndScriptFailure(['gettabwinvar(1, "b", "c", [])'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1731 CheckDefAndScriptFailure(['gettabwinvar(1, 1, 3, {})'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1732 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1733 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1734 def Test_gettagstack() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1735 CheckDefAndScriptFailure(['gettagstack("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1736 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1737 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1738 def Test_gettext() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1739 CheckDefAndScriptFailure(['gettext(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
1740 CheckDefExecAndScriptFailure(['gettext("")'], 'E475: Invalid argument') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1741 assert_equal('abc', gettext("abc")) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1742 assert_fails('gettext("")', 'E475:') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1743 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1744 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1745 def Test_getwininfo() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1746 CheckDefAndScriptFailure(['getwininfo("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1747 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1748 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1749 def Test_getwinpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1750 CheckDefAndScriptFailure(['getwinpos("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1751 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1752 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1753 def Test_getwinvar() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1754 CheckDefAndScriptFailure(['getwinvar("a", "b")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1755 CheckDefAndScriptFailure(['getwinvar(1, 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1756 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
1757 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1758 def Test_glob() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1759 glob('runtest.vim', true, true, true)->assert_equal(['runtest.vim']) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1760 CheckDefAndScriptFailure(['glob(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1761 CheckDefAndScriptFailure(['glob("a", 2)'], ['E1013: Argument 2: type mismatch, expected bool but got number', 'E1212: Bool required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1762 CheckDefAndScriptFailure(['glob("a", 1, "b")'], ['E1013: Argument 3: type mismatch, expected bool but got string', 'E1212: Bool required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1763 CheckDefAndScriptFailure(['glob("a", 1, true, 2)'], ['E1013: Argument 4: type mismatch, expected bool but got number', 'E1212: Bool required for argument 4']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1764 glob('')->assert_equal('') |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1765 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1766 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1767 def Test_glob2regpat() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1768 CheckDefAndScriptFailure(['glob2regpat(null)'], ['E1013: Argument 1: type mismatch, expected string but got special', 'E1174: String required for argument 1']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1769 glob2regpat('')->assert_equal('^$') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1770 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1771 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1772 def Test_globpath() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1773 globpath('.', 'runtest.vim', true, true, true)->assert_equal(['./runtest.vim']) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1774 CheckDefAndScriptFailure(['globpath(1, "b")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1775 CheckDefAndScriptFailure(['globpath("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1776 CheckDefAndScriptFailure(['globpath("a", "b", "c")'], ['E1013: Argument 3: type mismatch, expected bool but got string', 'E1212: Bool required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1777 CheckDefAndScriptFailure(['globpath("a", "b", true, "d")'], ['E1013: Argument 4: type mismatch, expected bool but got string', 'E1212: Bool required for argument 4']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1778 CheckDefAndScriptFailure(['globpath("a", "b", true, false, "e")'], ['E1013: Argument 5: type mismatch, expected bool but got string', 'E1212: Bool required for argument 5']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1779 globpath('', '')->assert_equal('') |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1780 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1781 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1782 def Test_has() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1783 has('eval', true)->assert_equal(1) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1784 CheckDefAndScriptFailure(['has(["a"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1785 CheckDefAndScriptFailure(['has("a", "b")'], ['E1013: Argument 2: type mismatch, expected bool but got string', 'E1212: Bool required for argument 2']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1786 has('')->assert_equal(0) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1787 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1788 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
1789 def Test_has_key() |
25212
79eb112b492d
patch 8.2.3142: Vim9: type check for has_key() argument is too strict
Bram Moolenaar <Bram@vim.org>
parents:
25198
diff
changeset
|
1790 var d = {123: 'xx'} |
79eb112b492d
patch 8.2.3142: Vim9: type check for has_key() argument is too strict
Bram Moolenaar <Bram@vim.org>
parents:
25198
diff
changeset
|
1791 assert_true(has_key(d, '123')) |
79eb112b492d
patch 8.2.3142: Vim9: type check for has_key() argument is too strict
Bram Moolenaar <Bram@vim.org>
parents:
25198
diff
changeset
|
1792 assert_true(has_key(d, 123)) |
79eb112b492d
patch 8.2.3142: Vim9: type check for has_key() argument is too strict
Bram Moolenaar <Bram@vim.org>
parents:
25198
diff
changeset
|
1793 assert_false(has_key(d, 'x')) |
79eb112b492d
patch 8.2.3142: Vim9: type check for has_key() argument is too strict
Bram Moolenaar <Bram@vim.org>
parents:
25198
diff
changeset
|
1794 assert_false(has_key(d, 99)) |
79eb112b492d
patch 8.2.3142: Vim9: type check for has_key() argument is too strict
Bram Moolenaar <Bram@vim.org>
parents:
25198
diff
changeset
|
1795 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1796 CheckDefAndScriptFailure(['has_key([1, 2], "k")'], ['E1013: Argument 1: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1797 CheckDefAndScriptFailure(['has_key({"a": 10}, ["a"])'], ['E1013: Argument 2: type mismatch, expected string but got list<string>', 'E1220: String or Number required for argument 2']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
1798 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
1799 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1800 def Test_haslocaldir() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1801 CheckDefAndScriptFailure(['haslocaldir("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1802 CheckDefAndScriptFailure(['haslocaldir("x", 1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1803 CheckDefAndScriptFailure(['haslocaldir(1, "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1804 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1805 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1806 def Test_hasmapto() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1807 hasmapto('foobar', 'i', true)->assert_equal(0) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1808 iabbrev foo foobar |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1809 hasmapto('foobar', 'i', true)->assert_equal(1) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1810 iunabbrev foo |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1811 CheckDefAndScriptFailure(['hasmapto(1, "b")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1812 CheckDefAndScriptFailure(['hasmapto("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1813 CheckDefAndScriptFailure(['hasmapto("a", "b", 2)'], ['E1013: Argument 3: type mismatch, expected bool but got number', 'E1212: Bool required for argument 3']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1814 hasmapto('', '')->assert_equal(0) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1815 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1816 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1817 def Test_histadd() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1818 CheckDefAndScriptFailure(['histadd(1, "x")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1819 CheckDefAndScriptFailure(['histadd(":", 10)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1820 histadd("search", 'skyblue') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1821 assert_equal('skyblue', histget('/', -1)) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
1822 histadd("search", '')->assert_equal(0) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1823 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1824 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
1825 def Test_histdel() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1826 CheckDefAndScriptFailure(['histdel(1, "x")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1827 CheckDefAndScriptFailure(['histdel(":", true)'], ['E1013: Argument 2: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
1828 histdel('search', '')->assert_equal(0) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
1829 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
1830 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1831 def Test_histget() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1832 CheckDefAndScriptFailure(['histget(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1833 CheckDefAndScriptFailure(['histget("a", "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1834 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1835 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1836 def Test_histnr() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1837 CheckDefAndScriptFailure(['histnr(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1838 assert_equal(-1, histnr('abc')) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1839 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1840 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1841 def Test_hlID() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1842 CheckDefAndScriptFailure(['hlID(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1843 assert_equal(0, hlID('NonExistingHighlight')) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1844 hlID('')->assert_equal(0) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1845 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1846 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1847 def Test_hlexists() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1848 CheckDefAndScriptFailure(['hlexists([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1849 assert_equal(0, hlexists('NonExistingHighlight')) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1850 hlexists('')->assert_equal(0) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1851 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1852 |
26089
c544eacaf066
patch 8.2.3578: manipulating highlighting is complicated
Bram Moolenaar <Bram@vim.org>
parents:
25850
diff
changeset
|
1853 def Test_hlget() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1854 CheckDefAndScriptFailure(['hlget([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 1']) |
26089
c544eacaf066
patch 8.2.3578: manipulating highlighting is complicated
Bram Moolenaar <Bram@vim.org>
parents:
25850
diff
changeset
|
1855 hlget('')->assert_equal([]) |
c544eacaf066
patch 8.2.3578: manipulating highlighting is complicated
Bram Moolenaar <Bram@vim.org>
parents:
25850
diff
changeset
|
1856 enddef |
c544eacaf066
patch 8.2.3578: manipulating highlighting is complicated
Bram Moolenaar <Bram@vim.org>
parents:
25850
diff
changeset
|
1857 |
c544eacaf066
patch 8.2.3578: manipulating highlighting is complicated
Bram Moolenaar <Bram@vim.org>
parents:
25850
diff
changeset
|
1858 def Test_hlset() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1859 CheckDefAndScriptFailure(['hlset("id")'], ['E1013: Argument 1: type mismatch, expected list<any> but got string', 'E1211: List required for argument 1']) |
26089
c544eacaf066
patch 8.2.3578: manipulating highlighting is complicated
Bram Moolenaar <Bram@vim.org>
parents:
25850
diff
changeset
|
1860 hlset([])->assert_equal(0) |
c544eacaf066
patch 8.2.3578: manipulating highlighting is complicated
Bram Moolenaar <Bram@vim.org>
parents:
25850
diff
changeset
|
1861 enddef |
c544eacaf066
patch 8.2.3578: manipulating highlighting is complicated
Bram Moolenaar <Bram@vim.org>
parents:
25850
diff
changeset
|
1862 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1863 def Test_iconv() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1864 CheckDefAndScriptFailure(['iconv(1, "from", "to")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1865 CheckDefAndScriptFailure(['iconv("abc", 10, "to")'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1866 CheckDefAndScriptFailure(['iconv("abc", "from", 20)'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1867 assert_equal('abc', iconv('abc', 'fromenc', 'toenc')) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1868 iconv('', '', '')->assert_equal('') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1869 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1870 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1871 def Test_indent() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1872 CheckDefAndScriptFailure(['indent([1])'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1873 CheckDefAndScriptFailure(['indent(true)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
1874 CheckDefExecAndScriptFailure(['indent("")'], 'E1209: Invalid value for a line number') |
26775
2df40c348c70
patch 8.2.3916: no error for passing an invalid line number to append()
Bram Moolenaar <Bram@vim.org>
parents:
26765
diff
changeset
|
1875 CheckDefExecAndScriptFailure(['indent(-1)'], 'E966: Invalid line number: -1') |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1876 assert_equal(0, indent(1)) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1877 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1878 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1879 def Test_index() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1880 index(['a', 'b', 'a', 'B'], 'b', 2, true)->assert_equal(3) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1881 CheckDefAndScriptFailure(['index("a", "a")'], ['E1013: Argument 1: type mismatch, expected list<any> but got string', 'E1226: List or Blob required for argument 1']) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
1882 CheckDefFailure(['index(["1"], 1)'], 'E1013: Argument 2: type mismatch, expected string but got number') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1883 CheckDefAndScriptFailure(['index(0z10, "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1884 CheckDefAndScriptFailure(['index([1], 1, "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1885 CheckDefAndScriptFailure(['index(0z1020, 10, 1, 2)'], ['E1013: Argument 4: type mismatch, expected bool but got number', 'E1212: Bool required for argument 4']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1886 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1887 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1888 def Test_input() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1889 CheckDefAndScriptFailure(['input(5)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1890 CheckDefAndScriptFailure(['input(["a"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1891 CheckDefAndScriptFailure(['input("p", 10)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1892 CheckDefAndScriptFailure(['input("p", "q", 20)'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1893 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1894 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1895 def Test_inputdialog() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1896 CheckDefAndScriptFailure(['inputdialog(5)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1897 CheckDefAndScriptFailure(['inputdialog(["a"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1898 CheckDefAndScriptFailure(['inputdialog("p", 10)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1899 CheckDefAndScriptFailure(['inputdialog("p", "q", 20)'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1900 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1901 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1902 def Test_inputlist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1903 CheckDefAndScriptFailure(['inputlist(10)'], ['E1013: Argument 1: type mismatch, expected list<string> but got number', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1904 CheckDefAndScriptFailure(['inputlist("abc")'], ['E1013: Argument 1: type mismatch, expected list<string> but got string', 'E1211: List required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1905 CheckDefFailure(['inputlist([1, 2, 3])'], 'E1013: Argument 1: type mismatch, expected list<string> but got list<number>') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1906 feedkeys("2\<CR>", 't') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1907 var r: number = inputlist(['a', 'b', 'c']) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1908 assert_equal(2, r) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1909 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1910 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1911 def Test_inputsecret() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1912 CheckDefAndScriptFailure(['inputsecret(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1913 CheckDefAndScriptFailure(['inputsecret("Pass:", 20)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1914 feedkeys("\<CR>", 't') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1915 var ans: string = inputsecret('Pass:', '123') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1916 assert_equal('123', ans) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1917 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1918 |
22898
a8bccb0634bc
patch 8.2.1996: Vim9: invalid error for argument of extend()
Bram Moolenaar <Bram@vim.org>
parents:
22766
diff
changeset
|
1919 let s:number_one = 1 |
a8bccb0634bc
patch 8.2.1996: Vim9: invalid error for argument of extend()
Bram Moolenaar <Bram@vim.org>
parents:
22766
diff
changeset
|
1920 let s:number_two = 2 |
a8bccb0634bc
patch 8.2.1996: Vim9: invalid error for argument of extend()
Bram Moolenaar <Bram@vim.org>
parents:
22766
diff
changeset
|
1921 let s:string_keep = 'keep' |
a8bccb0634bc
patch 8.2.1996: Vim9: invalid error for argument of extend()
Bram Moolenaar <Bram@vim.org>
parents:
22766
diff
changeset
|
1922 |
22661
c6b17787a38f
patch 8.2.1879: Vim9: argument types of insert() not checked when compiling
Bram Moolenaar <Bram@vim.org>
parents:
22655
diff
changeset
|
1923 def Test_insert() |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1924 var l = insert([2, 1], 3) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1925 var res = 0 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1926 for n in l |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1927 res += n |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1928 endfor |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1929 res->assert_equal(6) |
22661
c6b17787a38f
patch 8.2.1879: Vim9: argument types of insert() not checked when compiling
Bram Moolenaar <Bram@vim.org>
parents:
22655
diff
changeset
|
1930 |
24695
13efbfc53054
patch 8.2.2886: various pieces of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24659
diff
changeset
|
1931 var m: any = [] |
13efbfc53054
patch 8.2.2886: various pieces of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24659
diff
changeset
|
1932 insert(m, 4) |
13efbfc53054
patch 8.2.2886: various pieces of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24659
diff
changeset
|
1933 call assert_equal([4], m) |
13efbfc53054
patch 8.2.2886: various pieces of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24659
diff
changeset
|
1934 extend(m, [6], 0) |
13efbfc53054
patch 8.2.2886: various pieces of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24659
diff
changeset
|
1935 call assert_equal([6, 4], m) |
13efbfc53054
patch 8.2.2886: various pieces of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24659
diff
changeset
|
1936 |
24484
bc1a533148d7
patch 8.2.2782: Vim9: blob operations not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
24482
diff
changeset
|
1937 var lines =<< trim END |
bc1a533148d7
patch 8.2.2782: Vim9: blob operations not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
24482
diff
changeset
|
1938 insert(test_null_list(), 123) |
bc1a533148d7
patch 8.2.2782: Vim9: blob operations not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
24482
diff
changeset
|
1939 END |
bc1a533148d7
patch 8.2.2782: Vim9: blob operations not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
24482
diff
changeset
|
1940 CheckDefExecAndScriptFailure(lines, 'E1130:', 1) |
bc1a533148d7
patch 8.2.2782: Vim9: blob operations not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
24482
diff
changeset
|
1941 |
bc1a533148d7
patch 8.2.2782: Vim9: blob operations not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
24482
diff
changeset
|
1942 lines =<< trim END |
bc1a533148d7
patch 8.2.2782: Vim9: blob operations not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
24482
diff
changeset
|
1943 insert(test_null_blob(), 123) |
bc1a533148d7
patch 8.2.2782: Vim9: blob operations not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
24482
diff
changeset
|
1944 END |
bc1a533148d7
patch 8.2.2782: Vim9: blob operations not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
24482
diff
changeset
|
1945 CheckDefExecAndScriptFailure(lines, 'E1131:', 1) |
bc1a533148d7
patch 8.2.2782: Vim9: blob operations not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
24482
diff
changeset
|
1946 |
22661
c6b17787a38f
patch 8.2.1879: Vim9: argument types of insert() not checked when compiling
Bram Moolenaar <Bram@vim.org>
parents:
22655
diff
changeset
|
1947 assert_equal([1, 2, 3], insert([2, 3], 1)) |
22898
a8bccb0634bc
patch 8.2.1996: Vim9: invalid error for argument of extend()
Bram Moolenaar <Bram@vim.org>
parents:
22766
diff
changeset
|
1948 assert_equal([1, 2, 3], insert([2, 3], s:number_one)) |
22661
c6b17787a38f
patch 8.2.1879: Vim9: argument types of insert() not checked when compiling
Bram Moolenaar <Bram@vim.org>
parents:
22655
diff
changeset
|
1949 assert_equal([1, 2, 3], insert([1, 2], 3, 2)) |
22898
a8bccb0634bc
patch 8.2.1996: Vim9: invalid error for argument of extend()
Bram Moolenaar <Bram@vim.org>
parents:
22766
diff
changeset
|
1950 assert_equal([1, 2, 3], insert([1, 2], 3, s:number_two)) |
22661
c6b17787a38f
patch 8.2.1879: Vim9: argument types of insert() not checked when compiling
Bram Moolenaar <Bram@vim.org>
parents:
22655
diff
changeset
|
1951 assert_equal(['a', 'b', 'c'], insert(['b', 'c'], 'a')) |
c6b17787a38f
patch 8.2.1879: Vim9: argument types of insert() not checked when compiling
Bram Moolenaar <Bram@vim.org>
parents:
22655
diff
changeset
|
1952 assert_equal(0z1234, insert(0z34, 0x12)) |
22898
a8bccb0634bc
patch 8.2.1996: Vim9: invalid error for argument of extend()
Bram Moolenaar <Bram@vim.org>
parents:
22766
diff
changeset
|
1953 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1954 CheckDefAndScriptFailure(['insert("a", 1)'], ['E1013: Argument 1: type mismatch, expected list<any> but got string', 'E1226: List or Blob required for argument 1']) |
25384
e8e2c4d33b9b
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Bram Moolenaar <Bram@vim.org>
parents:
25368
diff
changeset
|
1955 CheckDefFailure(['insert([2, 3], "a")'], 'E1013: Argument 2: type mismatch, expected number but got string') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1956 CheckDefAndScriptFailure(['insert([2, 3], 1, "x")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1957 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1958 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1959 def Test_invert() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1960 CheckDefAndScriptFailure(['invert("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1961 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
1962 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1963 def Test_isdirectory() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1964 CheckDefAndScriptFailure(['isdirectory(1.1)'], ['E1013: Argument 1: type mismatch, expected string but got float', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1965 assert_false(isdirectory('NonExistingDir')) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1966 assert_false(isdirectory('')) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1967 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1968 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1969 def Test_islocked() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1970 CheckDefAndScriptFailure(['islocked(true)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1971 CheckDefAndScriptFailure(['var n1: number = 10', 'islocked(n1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1972 g:v1 = 10 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1973 assert_false(islocked('g:v1')) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1974 lockvar g:v1 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1975 assert_true(islocked('g:v1')) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1976 unlet g:v1 |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
1977 islocked('')->assert_equal(-1) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1978 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1979 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1980 def Test_items() |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1981 CheckDefFailure(['[]->items()'], 'E1013: Argument 1: type mismatch, expected dict<any> but got list<unknown>') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1982 assert_equal([['a', 10], ['b', 20]], {'a': 10, 'b': 20}->items()) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1983 assert_equal([], {}->items()) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1984 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
1985 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1986 def Test_job_getchannel() |
25288
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
1987 if !has('job') |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
1988 CheckFeature job |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
1989 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1990 CheckDefAndScriptFailure(['job_getchannel("a")'], ['E1013: Argument 1: type mismatch, expected job but got string', 'E1218: Job required for argument 1']) |
25288
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
1991 assert_fails('job_getchannel(test_null_job())', 'E916: not a valid job') |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
1992 endif |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1993 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1994 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
1995 def Test_job_info() |
25288
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
1996 if !has('job') |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
1997 CheckFeature job |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
1998 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
1999 CheckDefAndScriptFailure(['job_info("a")'], ['E1013: Argument 1: type mismatch, expected job but got string', 'E1218: Job required for argument 1']) |
25288
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
2000 assert_fails('job_info(test_null_job())', 'E916: not a valid job') |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
2001 endif |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2002 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2003 |
26368
744fdb15347d
patch 8.2.3715: Vim9: valgrind reports spurious problems for a test
Bram Moolenaar <Bram@vim.org>
parents:
26230
diff
changeset
|
2004 " Test_job_info_return_type() is in test_vim9_fails.vim |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2005 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2006 def Test_job_setoptions() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2007 if !has('job') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2008 CheckFeature job |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2009 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2010 CheckDefAndScriptFailure(['job_setoptions(test_null_channel(), {})'], ['E1013: Argument 1: type mismatch, expected job but got channel', 'E1218: Job required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2011 CheckDefAndScriptFailure(['job_setoptions(test_null_job(), [])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 2']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2012 assert_equal('fail', job_status(test_null_job())) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2013 endif |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2014 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2015 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2016 def Test_job_status() |
25288
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
2017 if !has('job') |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
2018 CheckFeature job |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
2019 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2020 CheckDefAndScriptFailure(['job_status("a")'], ['E1013: Argument 1: type mismatch, expected job but got string', 'E1218: Job required for argument 1']) |
25288
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
2021 assert_equal('fail', job_status(test_null_job())) |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
2022 endif |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2023 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2024 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2025 def Test_job_stop() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2026 if !has('job') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2027 CheckFeature job |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2028 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2029 CheckDefAndScriptFailure(['job_stop("a")'], ['E1013: Argument 1: type mismatch, expected job but got string', 'E1218: Job required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2030 CheckDefAndScriptFailure(['job_stop(test_null_job(), true)'], ['E1013: Argument 2: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 2']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2031 endif |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2032 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2033 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2034 def Test_join() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2035 CheckDefAndScriptFailure(['join("abc")'], ['E1013: Argument 1: type mismatch, expected list<any> but got string', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2036 CheckDefAndScriptFailure(['join([], 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2037 join([''], '')->assert_equal('') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2038 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2039 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2040 def Test_js_decode() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2041 CheckDefAndScriptFailure(['js_decode(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2042 assert_equal([1, 2], js_decode('[1,2]')) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
2043 js_decode('')->assert_equal(v:none) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2044 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2045 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2046 def Test_json_decode() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2047 CheckDefAndScriptFailure(['json_decode(true)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2048 assert_equal(1.0, json_decode('1.0')) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
2049 json_decode('')->assert_equal(v:none) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2050 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2051 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2052 def Test_keys() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2053 CheckDefAndScriptFailure(['keys([])'], ['E1013: Argument 1: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2054 assert_equal(['a'], {a: 'v'}->keys()) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2055 assert_equal([], {}->keys()) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2056 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2057 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2058 def Test_keys_return_type() |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
2059 const var: list<string> = {a: 1, b: 2}->keys() |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2060 var->assert_equal(['a', 'b']) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2061 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2062 |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2063 def Test_len() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2064 CheckDefAndScriptFailure(['len(true)'], ['E1013: Argument 1: type mismatch, expected list<any> but got bool', 'E701: Invalid type for len()']) |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2065 assert_equal(2, "ab"->len()) |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2066 assert_equal(3, 456->len()) |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2067 assert_equal(0, []->len()) |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2068 assert_equal(1, {a: 10}->len()) |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2069 assert_equal(4, 0z20304050->len()) |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2070 enddef |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2071 |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2072 def Test_libcall() |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2073 CheckFeature libcall |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2074 CheckDefAndScriptFailure(['libcall(1, "b", 3)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2075 CheckDefAndScriptFailure(['libcall("a", 2, 3)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2076 CheckDefAndScriptFailure(['libcall("a", "b", 1.1)'], ['E1013: Argument 3: type mismatch, expected string but got float', 'E1220: String or Number required for argument 3']) |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2077 enddef |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2078 |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2079 def Test_libcallnr() |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2080 CheckFeature libcall |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2081 CheckDefAndScriptFailure(['libcallnr(1, "b", 3)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2082 CheckDefAndScriptFailure(['libcallnr("a", 2, 3)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2083 CheckDefAndScriptFailure(['libcallnr("a", "b", 1.1)'], ['E1013: Argument 3: type mismatch, expected string but got float', 'E1220: String or Number required for argument 3']) |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2084 enddef |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2085 |
24250
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
2086 def Test_line() |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2087 assert_fails('line(true)', 'E1174:') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2088 CheckDefAndScriptFailure(['line(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2089 CheckDefAndScriptFailure(['line(".", "a")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2090 CheckDefExecAndScriptFailure(['line("")'], 'E1209: Invalid value for a line number') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2091 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2092 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2093 def Test_line2byte() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2094 CheckDefAndScriptFailure(['line2byte(true)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2095 CheckDefExecAndScriptFailure(['line2byte("")'], 'E1209: Invalid value for a line number') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2096 assert_equal(-1, line2byte(1)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2097 assert_equal(-1, line2byte(10000)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2098 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2099 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2100 def Test_lispindent() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2101 CheckDefAndScriptFailure(['lispindent({})'], ['E1013: Argument 1: type mismatch, expected string but got dict<unknown>', 'E1220: String or Number required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2102 CheckDefExecAndScriptFailure(['lispindent("")'], 'E1209: Invalid value for a line number') |
26775
2df40c348c70
patch 8.2.3916: no error for passing an invalid line number to append()
Bram Moolenaar <Bram@vim.org>
parents:
26765
diff
changeset
|
2103 CheckDefExecAndScriptFailure(['lispindent(-1)'], 'E966: Invalid line number: -1') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2104 assert_equal(0, lispindent(1)) |
24250
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
2105 enddef |
01b274c3f69b
patch 8.2.2666: Vim9: not enough function arguments checked for string
Bram Moolenaar <Bram@vim.org>
parents:
24248
diff
changeset
|
2106 |
25806
8d55e978f95b
patch 8.2.3438: cannot manipulate blobs
Bram Moolenaar <Bram@vim.org>
parents:
25784
diff
changeset
|
2107 def Test_list2blob() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2108 CheckDefAndScriptFailure(['list2blob(10)'], ['E1013: Argument 1: type mismatch, expected list<number> but got number', 'E1211: List required for argument 1']) |
25806
8d55e978f95b
patch 8.2.3438: cannot manipulate blobs
Bram Moolenaar <Bram@vim.org>
parents:
25784
diff
changeset
|
2109 CheckDefFailure(['list2blob([0z10, 0z02])'], 'E1013: Argument 1: type mismatch, expected list<number> but got list<blob>') |
8d55e978f95b
patch 8.2.3438: cannot manipulate blobs
Bram Moolenaar <Bram@vim.org>
parents:
25784
diff
changeset
|
2110 enddef |
8d55e978f95b
patch 8.2.3438: cannot manipulate blobs
Bram Moolenaar <Bram@vim.org>
parents:
25784
diff
changeset
|
2111 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2112 def Test_list2str_str2list_utf8() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2113 var s = "\u3042\u3044" |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2114 var l = [0x3042, 0x3044] |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2115 str2list(s, true)->assert_equal(l) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2116 list2str(l, true)->assert_equal(s) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2117 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2118 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2119 def Test_list2str() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2120 CheckDefAndScriptFailure(['list2str(".", true)'], ['E1013: Argument 1: type mismatch, expected list<number> but got string', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2121 CheckDefAndScriptFailure(['list2str([1], 0z10)'], ['E1013: Argument 2: type mismatch, expected bool but got blob', 'E1212: Bool required for argument 2']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2122 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2123 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2124 def SID(): number |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2125 return expand('<SID>') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2126 ->matchstr('<SNR>\zs\d\+\ze_$') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2127 ->str2nr() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2128 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2129 |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2130 def Test_listener_add() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2131 CheckDefAndScriptFailure(['listener_add("1", true)'], ['E1013: Argument 2: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 2']) |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2132 enddef |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2133 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2134 def Test_listener_flush() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2135 CheckDefAndScriptFailure(['listener_flush([1])'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1220: String or Number required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2136 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2137 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
2138 def Test_listener_remove() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2139 CheckDefAndScriptFailure(['listener_remove("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
2140 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
2141 |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2142 def Test_luaeval() |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2143 if !has('lua') |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2144 CheckFeature lua |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2145 endif |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2146 CheckDefAndScriptFailure(['luaeval(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2147 if exists_compiled('*luaeval') |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2148 luaeval('')->assert_equal(v:null) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2149 endif |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2150 enddef |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2151 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2152 def Test_map() |
26632
501b1a24d032
patch 8.2.3845: Vim9: test fails when the channel feature is missing
Bram Moolenaar <Bram@vim.org>
parents:
26585
diff
changeset
|
2153 if has('channel') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2154 CheckDefAndScriptFailure(['map(test_null_channel(), "1")'], ['E1013: Argument 1: type mismatch, expected list<any> but got channel', 'E1251: List, Dictionary, Blob or String required for argument 1']) |
26632
501b1a24d032
patch 8.2.3845: Vim9: test fails when the channel feature is missing
Bram Moolenaar <Bram@vim.org>
parents:
26585
diff
changeset
|
2155 endif |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2156 CheckDefAndScriptFailure(['map(1, "1")'], ['E1013: Argument 1: type mismatch, expected list<any> but got number', 'E1251: List, Dictionary, Blob or String required for argument 1']) |
27392
ec2ba9acec1b
patch 8.2.4224: Vim9: no error when using a number for map() second argument
Bram Moolenaar <Bram@vim.org>
parents:
27225
diff
changeset
|
2157 CheckDefAndScriptFailure(['map([1, 2], 4)'], ['E1256: String or function required for argument 2', 'E1024: Using a Number as a String']) |
26925
4e77f9961650
patch 8.2.3991: Vim9: error when extending dict<any>
Bram Moolenaar <Bram@vim.org>
parents:
26907
diff
changeset
|
2158 |
4e77f9961650
patch 8.2.3991: Vim9: error when extending dict<any>
Bram Moolenaar <Bram@vim.org>
parents:
26907
diff
changeset
|
2159 # type of dict remains dict<any> even when type of values changes |
26937
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2160 # same for list |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2161 var lines =<< trim END |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2162 var d: dict<any> = {a: 0} |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2163 d->map((k, v) => true) |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2164 d->map((k, v) => 'x') |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2165 assert_equal({a: 'x'}, d) |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2166 |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2167 d = {a: 0} |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2168 g:gd = d |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2169 map(g:gd, (k, v) => true) |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2170 assert_equal({a: true}, g:gd) |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2171 |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2172 var l: list<any> = [0] |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2173 l->map((k, v) => true) |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2174 l->map((k, v) => 'x') |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2175 assert_equal(['x'], l) |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2176 |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2177 l = [1] |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2178 g:gl = l |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2179 map(g:gl, (k, v) => true) |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2180 assert_equal([true], g:gl) |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2181 END |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2182 CheckDefAndScriptSuccess(lines) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2183 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2184 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2185 def Test_map_failure() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2186 CheckFeature job |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2187 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2188 var lines =<< trim END |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2189 vim9script |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2190 writefile([], 'Xtmpfile') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2191 silent e Xtmpfile |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2192 var d = {[bufnr('%')]: {a: 0}} |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2193 au BufReadPost * Func() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2194 def Func() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2195 if d->has_key('') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2196 endif |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2197 eval d[expand('<abuf>')]->mapnew((_, v: dict<job>) => 0) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2198 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2199 e |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2200 END |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2201 CheckScriptFailure(lines, 'E1013:') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2202 au! BufReadPost |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2203 delete('Xtmpfile') |
26937
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2204 |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2205 lines =<< trim END |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2206 var d: dict<number> = {a: 1} |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2207 g:gd = d |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2208 map(g:gd, (k, v) => true) |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2209 END |
7045e9308ca3
patch 8.2.3997: Vim9: not enough testing for extend() and map()
Bram Moolenaar <Bram@vim.org>
parents:
26935
diff
changeset
|
2210 CheckDefExecAndScriptFailure(lines, 'E1012: Type mismatch; expected number but got bool') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2211 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2212 |
23646
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2213 def Test_map_function_arg() |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2214 var lines =<< trim END |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2215 def MapOne(i: number, v: string): string |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2216 return i .. ':' .. v |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2217 enddef |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2218 var l = ['a', 'b', 'c'] |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2219 map(l, MapOne) |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2220 assert_equal(['0:a', '1:b', '2:c'], l) |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2221 END |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2222 CheckDefAndScriptSuccess(lines) |
24808
0bc60e26a2b5
patch 8.2.2942: Vim9: error when calling function with too few arguments
Bram Moolenaar <Bram@vim.org>
parents:
24699
diff
changeset
|
2223 |
0bc60e26a2b5
patch 8.2.2942: Vim9: error when calling function with too few arguments
Bram Moolenaar <Bram@vim.org>
parents:
24699
diff
changeset
|
2224 lines =<< trim END |
0bc60e26a2b5
patch 8.2.2942: Vim9: error when calling function with too few arguments
Bram Moolenaar <Bram@vim.org>
parents:
24699
diff
changeset
|
2225 range(3)->map((a, b, c) => a + b + c) |
0bc60e26a2b5
patch 8.2.2942: Vim9: error when calling function with too few arguments
Bram Moolenaar <Bram@vim.org>
parents:
24699
diff
changeset
|
2226 END |
0bc60e26a2b5
patch 8.2.2942: Vim9: error when calling function with too few arguments
Bram Moolenaar <Bram@vim.org>
parents:
24699
diff
changeset
|
2227 CheckDefExecAndScriptFailure(lines, 'E1190: One argument too few') |
0bc60e26a2b5
patch 8.2.2942: Vim9: error when calling function with too few arguments
Bram Moolenaar <Bram@vim.org>
parents:
24699
diff
changeset
|
2228 lines =<< trim END |
0bc60e26a2b5
patch 8.2.2942: Vim9: error when calling function with too few arguments
Bram Moolenaar <Bram@vim.org>
parents:
24699
diff
changeset
|
2229 range(3)->map((a, b, c, d) => a + b + c + d) |
0bc60e26a2b5
patch 8.2.2942: Vim9: error when calling function with too few arguments
Bram Moolenaar <Bram@vim.org>
parents:
24699
diff
changeset
|
2230 END |
0bc60e26a2b5
patch 8.2.2942: Vim9: error when calling function with too few arguments
Bram Moolenaar <Bram@vim.org>
parents:
24699
diff
changeset
|
2231 CheckDefExecAndScriptFailure(lines, 'E1190: 2 arguments too few') |
26737
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
2232 |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
2233 lines =<< trim END |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
2234 def Map(i: number, v: number): string |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
2235 return 'bad' |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
2236 enddef |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
2237 echo map([1, 2, 3], Map) |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
2238 END |
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
2239 CheckDefAndScriptFailure(lines, ['E1013: Argument 2: type mismatch, expected func(...): number but got func(number, number): string', 'E1012: Type mismatch; expected number but got string in map()']) |
23646
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2240 enddef |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2241 |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2242 def Test_map_item_type() |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2243 var lines =<< trim END |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2244 var l = ['a', 'b', 'c'] |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2245 map(l, (k, v) => k .. '/' .. v ) |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2246 assert_equal(['0/a', '1/b', '2/c'], l) |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2247 END |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2248 CheckDefAndScriptSuccess(lines) |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2249 |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2250 lines =<< trim END |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2251 var l: list<number> = [0] |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2252 echo map(l, (_, v) => []) |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2253 END |
26737
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
2254 CheckDefAndScriptFailure(lines, ['E1013: Argument 2: type mismatch, expected func(...): number but got func(any, any): list<unknown>', 'E1012: Type mismatch; expected number but got list<unknown> in map()'], 2) |
23646
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2255 |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2256 lines =<< trim END |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2257 var l: list<number> = range(2) |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2258 echo map(l, (_, v) => []) |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2259 END |
26737
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
2260 CheckDefAndScriptFailure(lines, ['E1013: Argument 2: type mismatch, expected func(...): number but got func(any, any): list<unknown>', 'E1012: Type mismatch; expected number but got list<unknown> in map()'], 2) |
23646
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2261 |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2262 lines =<< trim END |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2263 var d: dict<number> = {key: 0} |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2264 echo map(d, (_, v) => []) |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2265 END |
26737
10d3105030ab
patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Bram Moolenaar <Bram@vim.org>
parents:
26733
diff
changeset
|
2266 CheckDefAndScriptFailure(lines, ['E1013: Argument 2: type mismatch, expected func(...): number but got func(any, any): list<unknown>', 'E1012: Type mismatch; expected number but got list<unknown> in map()'], 2) |
23646
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2267 enddef |
5d77a7587927
patch 8.2.2365: Vim9: no check for map() changing item type at script level
Bram Moolenaar <Bram@vim.org>
parents:
23640
diff
changeset
|
2268 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2269 def Test_maparg() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2270 var lnum = str2nr(expand('<sflnum>')) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2271 map foo bar |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
2272 maparg('foo', '', false, true)->assert_equal({ |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2273 lnum: lnum + 1, |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2274 script: 0, |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2275 mode: ' ', |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2276 silent: 0, |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2277 noremap: 0, |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2278 lhs: 'foo', |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2279 lhsraw: 'foo', |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2280 nowait: 0, |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2281 expr: 0, |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2282 sid: SID(), |
27225
95f202f77cbb
patch 8.2.4141: Vim9 builtin functions test fails
Bram Moolenaar <Bram@vim.org>
parents:
26937
diff
changeset
|
2283 scriptversion: 999999, |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2284 rhs: 'bar', |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2285 buffer: 0}) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2286 unmap foo |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2287 CheckDefAndScriptFailure(['maparg(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2288 CheckDefAndScriptFailure(['maparg("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2289 CheckDefAndScriptFailure(['maparg("a", "b", 2)'], ['E1013: Argument 3: type mismatch, expected bool but got number', 'E1212: Bool required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2290 CheckDefAndScriptFailure(['maparg("a", "b", true, 2)'], ['E1013: Argument 4: type mismatch, expected bool but got number', 'E1212: Bool required for argument 4']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2291 maparg('')->assert_equal('') |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2292 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2293 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2294 def Test_maparg_mapset() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2295 nnoremap <F3> :echo "hit F3"<CR> |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2296 var mapsave = maparg('<F3>', 'n', false, true) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2297 mapset('n', false, mapsave) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2298 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2299 nunmap <F3> |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2300 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2301 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2302 def Test_mapcheck() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2303 iabbrev foo foobar |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2304 mapcheck('foo', 'i', true)->assert_equal('foobar') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2305 iunabbrev foo |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2306 CheckDefAndScriptFailure(['mapcheck(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2307 CheckDefAndScriptFailure(['mapcheck("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2308 CheckDefAndScriptFailure(['mapcheck("a", "b", 2)'], ['E1013: Argument 3: type mismatch, expected bool but got number', 'E1212: Bool required for argument 3']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2309 mapcheck('')->assert_equal('') |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2310 mapcheck('', '')->assert_equal('') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2311 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2312 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2313 def Test_mapnew() |
26632
501b1a24d032
patch 8.2.3845: Vim9: test fails when the channel feature is missing
Bram Moolenaar <Bram@vim.org>
parents:
26585
diff
changeset
|
2314 if has('channel') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2315 CheckDefAndScriptFailure(['mapnew(test_null_job(), "1")'], ['E1013: Argument 1: type mismatch, expected list<any> but got job', 'E1251: List, Dictionary, Blob or String required for argument 1']) |
26632
501b1a24d032
patch 8.2.3845: Vim9: test fails when the channel feature is missing
Bram Moolenaar <Bram@vim.org>
parents:
26585
diff
changeset
|
2316 endif |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2317 CheckDefAndScriptFailure(['mapnew(1, "1")'], ['E1013: Argument 1: type mismatch, expected list<any> but got number', 'E1251: List, Dictionary, Blob or String required for argument 1']) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2318 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2319 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2320 def Test_mapset() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2321 CheckDefAndScriptFailure(['mapset(1, true, {})'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2322 CheckDefAndScriptFailure(['mapset("a", 2, {})'], ['E1013: Argument 2: type mismatch, expected bool but got number', 'E1212: Bool required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2323 CheckDefAndScriptFailure(['mapset("a", false, [])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 3']) |
23990
06da0685077b
patch 8.2.2537: Vim9: crash when map() fails
Bram Moolenaar <Bram@vim.org>
parents:
23909
diff
changeset
|
2324 enddef |
06da0685077b
patch 8.2.2537: Vim9: crash when map() fails
Bram Moolenaar <Bram@vim.org>
parents:
23909
diff
changeset
|
2325 |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2326 def Test_match() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2327 CheckDefAndScriptFailure(['match(0z12, "p")'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1222: String or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2328 CheckDefAndScriptFailure(['match(["s"], [2])'], ['E1013: Argument 2: type mismatch, expected string but got list<number>', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2329 CheckDefAndScriptFailure(['match("s", "p", "q")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2330 CheckDefAndScriptFailure(['match("s", "p", 1, "r")'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2331 assert_equal(2, match('ab12cd', '12')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2332 assert_equal(-1, match('ab12cd', '34')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2333 assert_equal(6, match('ab12cd12ef', '12', 4)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2334 assert_equal(2, match('abcd', '..', 0, 3)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2335 assert_equal(1, match(['a', 'b', 'c'], 'b')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2336 assert_equal(-1, match(['a', 'b', 'c'], 'd')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2337 assert_equal(3, match(['a', 'b', 'c', 'b', 'd', 'b'], 'b', 2)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2338 assert_equal(5, match(['a', 'b', 'c', 'b', 'd', 'b'], 'b', 2, 2)) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2339 match('', 'a')->assert_equal(-1) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2340 match('abc', '')->assert_equal(0) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2341 match('', '')->assert_equal(0) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2342 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2343 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2344 def Test_matchadd() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2345 CheckDefAndScriptFailure(['matchadd(1, "b")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2346 CheckDefAndScriptFailure(['matchadd("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2347 CheckDefAndScriptFailure(['matchadd("a", "b", "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2348 CheckDefAndScriptFailure(['matchadd("a", "b", 1, "d")'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2349 CheckDefAndScriptFailure(['matchadd("a", "b", 1, 1, [])'], ['E1013: Argument 5: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 5']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2350 matchadd('', 'a')->assert_equal(-1) |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2351 matchadd('Search', '')->assert_equal(-1) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2352 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2353 |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2354 def Test_matchaddpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2355 CheckDefAndScriptFailure(['matchaddpos(1, [1])'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2356 CheckDefAndScriptFailure(['matchaddpos("a", "b")'], ['E1013: Argument 2: type mismatch, expected list<any> but got string', 'E1211: List required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2357 CheckDefAndScriptFailure(['matchaddpos("a", [1], "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2358 CheckDefAndScriptFailure(['matchaddpos("a", [1], 1, "d")'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2359 CheckDefAndScriptFailure(['matchaddpos("a", [1], 1, 1, [])'], ['E1013: Argument 5: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 5']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2360 matchaddpos('', [1])->assert_equal(-1) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2361 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2362 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
2363 def Test_matcharg() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2364 CheckDefAndScriptFailure(['matcharg("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
2365 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
2366 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
2367 def Test_matchdelete() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2368 CheckDefAndScriptFailure(['matchdelete("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2369 CheckDefAndScriptFailure(['matchdelete("x", 1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2370 CheckDefAndScriptFailure(['matchdelete(1, "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
2371 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
2372 |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2373 def Test_matchend() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2374 CheckDefAndScriptFailure(['matchend(0z12, "p")'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1222: String or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2375 CheckDefAndScriptFailure(['matchend(["s"], [2])'], ['E1013: Argument 2: type mismatch, expected string but got list<number>', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2376 CheckDefAndScriptFailure(['matchend("s", "p", "q")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2377 CheckDefAndScriptFailure(['matchend("s", "p", 1, "r")'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2378 assert_equal(4, matchend('ab12cd', '12')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2379 assert_equal(-1, matchend('ab12cd', '34')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2380 assert_equal(8, matchend('ab12cd12ef', '12', 4)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2381 assert_equal(4, matchend('abcd', '..', 0, 3)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2382 assert_equal(1, matchend(['a', 'b', 'c'], 'b')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2383 assert_equal(-1, matchend(['a', 'b', 'c'], 'd')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2384 assert_equal(3, matchend(['a', 'b', 'c', 'b', 'd', 'b'], 'b', 2)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2385 assert_equal(5, matchend(['a', 'b', 'c', 'b', 'd', 'b'], 'b', 2, 2)) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2386 matchend('', 'a')->assert_equal(-1) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2387 matchend('abc', '')->assert_equal(0) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2388 matchend('', '')->assert_equal(0) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2389 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2390 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2391 def Test_matchfuzzy() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2392 CheckDefAndScriptFailure(['matchfuzzy({}, "p")'], ['E1013: Argument 1: type mismatch, expected list<any> but got dict<unknown>', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2393 CheckDefAndScriptFailure(['matchfuzzy([], 1)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2394 CheckDefAndScriptFailure(['matchfuzzy([], "a", [])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 3']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
2395 matchfuzzy(['abc', 'xyz'], '')->assert_equal([]) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2396 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2397 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2398 def Test_matchfuzzypos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2399 CheckDefAndScriptFailure(['matchfuzzypos({}, "p")'], ['E1013: Argument 1: type mismatch, expected list<any> but got dict<unknown>', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2400 CheckDefAndScriptFailure(['matchfuzzypos([], 1)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2401 CheckDefAndScriptFailure(['matchfuzzypos([], "a", [])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 3']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
2402 matchfuzzypos(['abc', 'xyz'], '')->assert_equal([[], [], []]) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2403 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2404 |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2405 def Test_matchlist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2406 CheckDefAndScriptFailure(['matchlist(0z12, "p")'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1222: String or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2407 CheckDefAndScriptFailure(['matchlist(["s"], [2])'], ['E1013: Argument 2: type mismatch, expected string but got list<number>', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2408 CheckDefAndScriptFailure(['matchlist("s", "p", "q")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2409 CheckDefAndScriptFailure(['matchlist("s", "p", 1, "r")'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2410 var l: list<string> = ['12', '', '', '', '', '', '', '', '', ''] |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2411 assert_equal(l, matchlist('ab12cd', '12')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2412 assert_equal([], matchlist('ab12cd', '34')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2413 assert_equal(l, matchlist('ab12cd12ef', '12', 4)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2414 l[0] = 'cd' |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2415 assert_equal(l, matchlist('abcd', '..', 0, 3)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2416 l[0] = 'b' |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2417 assert_equal(l, matchlist(['a', 'b', 'c'], 'b')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2418 assert_equal([], matchlist(['a', 'b', 'c'], 'd')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2419 assert_equal(l, matchlist(['a', 'b', 'c', 'b', 'd', 'b'], 'b', 2)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2420 assert_equal(l, matchlist(['a', 'b', 'c', 'b', 'd', 'b'], 'b', 2, 2)) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2421 matchlist('', 'a')->assert_equal([]) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2422 matchlist('abc', '')->assert_equal(repeat([''], 10)) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2423 matchlist('', '')->assert_equal(repeat([''], 10)) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2424 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2425 |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2426 def Test_matchstr() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2427 CheckDefAndScriptFailure(['matchstr(0z12, "p")'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1222: String or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2428 CheckDefAndScriptFailure(['matchstr(["s"], [2])'], ['E1013: Argument 2: type mismatch, expected string but got list<number>', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2429 CheckDefAndScriptFailure(['matchstr("s", "p", "q")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2430 CheckDefAndScriptFailure(['matchstr("s", "p", 1, "r")'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2431 assert_equal('12', matchstr('ab12cd', '12')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2432 assert_equal('', matchstr('ab12cd', '34')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2433 assert_equal('12', matchstr('ab12cd12ef', '12', 4)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2434 assert_equal('cd', matchstr('abcd', '..', 0, 3)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2435 assert_equal('b', matchstr(['a', 'b', 'c'], 'b')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2436 assert_equal('', matchstr(['a', 'b', 'c'], 'd')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2437 assert_equal('b', matchstr(['a', 'b', 'c', 'b', 'd', 'b'], 'b', 2)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2438 assert_equal('b', matchstr(['a', 'b', 'c', 'b', 'd', 'b'], 'b', 2, 2)) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2439 matchstr('', 'a')->assert_equal('') |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2440 matchstr('abc', '')->assert_equal('') |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2441 matchstr('', '')->assert_equal('') |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2442 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2443 |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2444 def Test_matchstrpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2445 CheckDefAndScriptFailure(['matchstrpos(0z12, "p")'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1222: String or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2446 CheckDefAndScriptFailure(['matchstrpos(["s"], [2])'], ['E1013: Argument 2: type mismatch, expected string but got list<number>', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2447 CheckDefAndScriptFailure(['matchstrpos("s", "p", "q")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2448 CheckDefAndScriptFailure(['matchstrpos("s", "p", 1, "r")'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2449 assert_equal(['12', 2, 4], matchstrpos('ab12cd', '12')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2450 assert_equal(['', -1, -1], matchstrpos('ab12cd', '34')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2451 assert_equal(['12', 6, 8], matchstrpos('ab12cd12ef', '12', 4)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2452 assert_equal(['cd', 2, 4], matchstrpos('abcd', '..', 0, 3)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2453 assert_equal(['b', 1, 0, 1], matchstrpos(['a', 'b', 'c'], 'b')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2454 assert_equal(['', -1, -1, -1], matchstrpos(['a', 'b', 'c'], 'd')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2455 assert_equal(['b', 3, 0, 1], |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2456 matchstrpos(['a', 'b', 'c', 'b', 'd', 'b'], 'b', 2)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2457 assert_equal(['b', 5, 0, 1], |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2458 matchstrpos(['a', 'b', 'c', 'b', 'd', 'b'], 'b', 2, 2)) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2459 matchstrpos('', 'a')->assert_equal(['', -1, -1]) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2460 matchstrpos('abc', '')->assert_equal(['', 0, 0]) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2461 matchstrpos('', '')->assert_equal(['', 0, 0]) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2462 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2463 |
23705
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2464 def Test_max() |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2465 g:flag = true |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2466 var l1: list<number> = g:flag |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2467 ? [1, max([2, 3])] |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2468 : [4, 5] |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2469 assert_equal([1, 3], l1) |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2470 |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2471 g:flag = false |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2472 var l2: list<number> = g:flag |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2473 ? [1, max([2, 3])] |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2474 : [4, 5] |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2475 assert_equal([4, 5], l2) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2476 CheckDefAndScriptFailure(['max(5)'], ['E1013: Argument 1: type mismatch, expected list<any> but got number', 'E1227: List or Dictionary required for argument 1']) |
23705
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2477 enddef |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2478 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2479 def Test_menu_info() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2480 CheckDefAndScriptFailure(['menu_info(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2481 CheckDefAndScriptFailure(['menu_info(10, "n")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2482 CheckDefAndScriptFailure(['menu_info("File", 10)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2483 assert_equal({}, menu_info('aMenu')) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2484 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2485 |
23705
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2486 def Test_min() |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2487 g:flag = true |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2488 var l1: list<number> = g:flag |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2489 ? [1, min([2, 3])] |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2490 : [4, 5] |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2491 assert_equal([1, 2], l1) |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2492 |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2493 g:flag = false |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2494 var l2: list<number> = g:flag |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2495 ? [1, min([2, 3])] |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2496 : [4, 5] |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2497 assert_equal([4, 5], l2) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2498 CheckDefAndScriptFailure(['min(5)'], ['E1013: Argument 1: type mismatch, expected list<any> but got number', 'E1227: List or Dictionary required for argument 1']) |
23705
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2499 enddef |
9092d2a4422a
patch 8.2.2394: Vim9: min() and max() return type is "any"
Bram Moolenaar <Bram@vim.org>
parents:
23691
diff
changeset
|
2500 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2501 def Test_mkdir() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2502 CheckDefAndScriptFailure(['mkdir(["a"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2503 CheckDefAndScriptFailure(['mkdir("a", {})'], ['E1013: Argument 2: type mismatch, expected string but got dict<unknown>', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2504 CheckDefAndScriptFailure(['mkdir("a", "b", "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2505 CheckDefExecAndScriptFailure(['mkdir("")'], 'E1175: Non-empty string required for argument 1') |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2506 delete('a', 'rf') |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2507 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2508 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2509 def Test_mode() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2510 CheckDefAndScriptFailure(['mode("1")'], ['E1013: Argument 1: type mismatch, expected bool but got string', 'E1212: Bool required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2511 CheckDefAndScriptFailure(['mode(2)'], ['E1013: Argument 1: type mismatch, expected bool but got number', 'E1212: Bool required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2512 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2513 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2514 def Test_mzeval() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2515 if !has('mzscheme') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2516 CheckFeature mzscheme |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2517 endif |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2518 CheckDefAndScriptFailure(['mzeval(["a"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1174: String required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2519 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2520 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2521 def Test_nextnonblank() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2522 CheckDefAndScriptFailure(['nextnonblank(null)'], ['E1013: Argument 1: type mismatch, expected string but got special', 'E1220: String or Number required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2523 CheckDefExecAndScriptFailure(['nextnonblank("")'], 'E1209: Invalid value for a line number') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2524 assert_equal(0, nextnonblank(1)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2525 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2526 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2527 def Test_nr2char() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2528 nr2char(97, true)->assert_equal('a') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2529 CheckDefAndScriptFailure(['nr2char("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2530 CheckDefAndScriptFailure(['nr2char(1, "a")'], ['E1013: Argument 2: type mismatch, expected bool but got string', 'E1212: Bool required for argument 2']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2531 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2532 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
2533 def Test_or() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2534 CheckDefAndScriptFailure(['or("x", 0x2)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2535 CheckDefAndScriptFailure(['or(0x1, "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2536 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2537 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2538 def Test_pathshorten() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2539 CheckDefAndScriptFailure(['pathshorten(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2540 CheckDefAndScriptFailure(['pathshorten("a", "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2541 pathshorten('')->assert_equal('') |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2542 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2543 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2544 def Test_perleval() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2545 if !has('perl') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2546 CheckFeature perl |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2547 endif |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2548 CheckDefAndScriptFailure(['perleval(["a"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1174: String required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2549 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2550 |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2551 def Test_popup_atcursor() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2552 CheckDefAndScriptFailure(['popup_atcursor({"a": 10}, {})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1224: String, Number or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2553 CheckDefAndScriptFailure(['popup_atcursor("a", [1, 2])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 2']) |
25236
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2554 |
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2555 # Pass variable of type 'any' to popup_atcursor() |
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2556 var what: any = 'Hello' |
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2557 var popupID = what->popup_atcursor({moved: 'any'}) |
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2558 assert_equal(0, popupID->popup_getoptions().tabpage) |
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2559 popupID->popup_close() |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2560 enddef |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2561 |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2562 def Test_popup_beval() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2563 CheckDefAndScriptFailure(['popup_beval({"a": 10}, {})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1224: String, Number or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2564 CheckDefAndScriptFailure(['popup_beval("a", [1, 2])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 2']) |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2565 enddef |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2566 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2567 def Test_popup_clear() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2568 CheckDefAndScriptFailure(['popup_clear(["a"])'], ['E1013: Argument 1: type mismatch, expected bool but got list<string>', 'E1212: Bool required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2569 CheckDefAndScriptFailure(['popup_clear(2)'], ['E1013: Argument 1: type mismatch, expected bool but got number', 'E1212: Bool required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2570 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2571 |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2572 def Test_popup_close() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2573 CheckDefAndScriptFailure(['popup_close("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2574 enddef |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2575 |
25236
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2576 def Test_popup_create() |
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2577 # Pass variable of type 'any' to popup_create() |
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2578 var what: any = 'Hello' |
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2579 var popupID = what->popup_create({}) |
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2580 assert_equal(0, popupID->popup_getoptions().tabpage) |
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2581 popupID->popup_close() |
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2582 enddef |
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
2583 |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2584 def Test_popup_dialog() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2585 CheckDefAndScriptFailure(['popup_dialog({"a": 10}, {})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1224: String, Number or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2586 CheckDefAndScriptFailure(['popup_dialog("a", [1, 2])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 2']) |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2587 enddef |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2588 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2589 def Test_popup_filter_menu() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2590 CheckDefAndScriptFailure(['popup_filter_menu("x", "")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2591 CheckDefAndScriptFailure(['popup_filter_menu(1, 1)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
2592 var id: number = popup_menu(["one", "two", "three"], {}) |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
2593 popup_filter_menu(id, '') |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
2594 popup_close(id) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2595 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2596 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2597 def Test_popup_filter_yesno() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2598 CheckDefAndScriptFailure(['popup_filter_yesno("x", "")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2599 CheckDefAndScriptFailure(['popup_filter_yesno(1, 1)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2600 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2601 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2602 def Test_popup_getoptions() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2603 CheckDefAndScriptFailure(['popup_getoptions("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2604 CheckDefAndScriptFailure(['popup_getoptions(true)'], ['E1013: Argument 1: type mismatch, expected number but got bool', 'E1210: Number required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2605 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2606 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2607 def Test_popup_getpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2608 CheckDefAndScriptFailure(['popup_getpos("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2609 CheckDefAndScriptFailure(['popup_getpos(true)'], ['E1013: Argument 1: type mismatch, expected number but got bool', 'E1210: Number required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2610 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2611 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2612 def Test_popup_hide() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2613 CheckDefAndScriptFailure(['popup_hide("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2614 CheckDefAndScriptFailure(['popup_hide(true)'], ['E1013: Argument 1: type mismatch, expected number but got bool', 'E1210: Number required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2615 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2616 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2617 def Test_popup_locate() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2618 CheckDefAndScriptFailure(['popup_locate("a", 20)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2619 CheckDefAndScriptFailure(['popup_locate(10, "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
2620 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
2621 |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2622 def Test_popup_menu() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2623 CheckDefAndScriptFailure(['popup_menu({"a": 10}, {})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1224: String, Number or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2624 CheckDefAndScriptFailure(['popup_menu("a", [1, 2])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 2']) |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2625 enddef |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2626 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2627 def Test_popup_move() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2628 CheckDefAndScriptFailure(['popup_move("x", {})'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2629 CheckDefAndScriptFailure(['popup_move(1, [])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2630 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2631 |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2632 def Test_popup_notification() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2633 CheckDefAndScriptFailure(['popup_notification({"a": 10}, {})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1224: String, Number or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2634 CheckDefAndScriptFailure(['popup_notification("a", [1, 2])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 2']) |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2635 enddef |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
2636 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2637 def Test_popup_setoptions() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2638 CheckDefAndScriptFailure(['popup_setoptions("x", {})'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2639 CheckDefAndScriptFailure(['popup_setoptions(1, [])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2640 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2641 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2642 def Test_popup_settext() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2643 CheckDefAndScriptFailure(['popup_settext("x", [])'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2644 CheckDefAndScriptFailure(['popup_settext(1, 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1222: String or List required for argument 2']) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2645 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2646 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2647 def Test_popup_show() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2648 CheckDefAndScriptFailure(['popup_show("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2649 CheckDefAndScriptFailure(['popup_show(true)'], ['E1013: Argument 1: type mismatch, expected number but got bool', 'E1210: Number required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2650 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2651 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2652 def Test_prevnonblank() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2653 CheckDefAndScriptFailure(['prevnonblank(null)'], ['E1013: Argument 1: type mismatch, expected string but got special', 'E1220: String or Number required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2654 CheckDefExecAndScriptFailure(['prevnonblank("")'], 'E1209: Invalid value for a line number') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2655 assert_equal(0, prevnonblank(1)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2656 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2657 |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2658 def Test_printf() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2659 CheckDefAndScriptFailure(['printf([1])'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1220: String or Number required for argument 1']) |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2660 printf(0x10)->assert_equal('16') |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2661 assert_equal(" abc", "abc"->printf("%4s")) |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2662 enddef |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
2663 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2664 def Test_prompt_getprompt() |
25288
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
2665 if !has('channel') |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
2666 CheckFeature channel |
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
2667 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2668 CheckDefAndScriptFailure(['prompt_getprompt([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
25110
e38a406ccc46
patch 8.2.3092: Vim9: builtin function test fails without +channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25094
diff
changeset
|
2669 assert_equal('', prompt_getprompt('NonExistingBuf')) |
e38a406ccc46
patch 8.2.3092: Vim9: builtin function test fails without +channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25094
diff
changeset
|
2670 endif |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2671 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2672 |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2673 def Test_prompt_setcallback() |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2674 if !has('channel') |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2675 CheckFeature channel |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2676 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2677 CheckDefAndScriptFailure(['prompt_setcallback(true, "1")'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 1']) |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2678 endif |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2679 enddef |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2680 |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2681 def Test_prompt_setinterrupt() |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2682 if !has('channel') |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2683 CheckFeature channel |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2684 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2685 CheckDefAndScriptFailure(['prompt_setinterrupt(true, "1")'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 1']) |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2686 endif |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2687 enddef |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
2688 |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2689 def Test_prompt_setprompt() |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2690 if !has('channel') |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2691 CheckFeature channel |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2692 else |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2693 CheckDefAndScriptFailure(['prompt_setprompt([], "p")'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2694 CheckDefAndScriptFailure(['prompt_setprompt(1, [])'], ['E1013: Argument 2: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 2']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2695 endif |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2696 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2697 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2698 def Test_prop_add() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2699 CheckDefAndScriptFailure(['prop_add("a", 2, {})'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2700 CheckDefAndScriptFailure(['prop_add(1, "b", {})'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2701 CheckDefAndScriptFailure(['prop_add(1, 2, [])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 3']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2702 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2703 |
25640
78ef12e0ce8c
patch 8.2.3356: adding many text properties requires a lot of function calls
Bram Moolenaar <Bram@vim.org>
parents:
25571
diff
changeset
|
2704 def Test_prop_add_list() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2705 CheckDefAndScriptFailure(['prop_add_list([], [])'], ['E1013: Argument 1: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2706 CheckDefAndScriptFailure(['prop_add_list({}, {})'], ['E1013: Argument 2: type mismatch, expected list<any> but got dict<unknown>', 'E1211: List required for argument 2']) |
25640
78ef12e0ce8c
patch 8.2.3356: adding many text properties requires a lot of function calls
Bram Moolenaar <Bram@vim.org>
parents:
25571
diff
changeset
|
2707 enddef |
78ef12e0ce8c
patch 8.2.3356: adding many text properties requires a lot of function calls
Bram Moolenaar <Bram@vim.org>
parents:
25571
diff
changeset
|
2708 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2709 def Test_prop_clear() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2710 CheckDefAndScriptFailure(['prop_clear("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2711 CheckDefAndScriptFailure(['prop_clear(1, "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2712 CheckDefAndScriptFailure(['prop_clear(1, 2, [])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 3']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2713 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
2714 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2715 def Test_prop_find() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2716 CheckDefAndScriptFailure(['prop_find([1, 2])'], ['E1013: Argument 1: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2717 CheckDefAndScriptFailure(['prop_find([1, 2], "k")'], ['E1013: Argument 1: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2718 CheckDefAndScriptFailure(['prop_find({"a": 10}, ["a"])'], ['E1013: Argument 2: type mismatch, expected string but got list<string>', 'E1174: String required for argument 2']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
2719 assert_fails("prop_find({}, '')", 'E474:') |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2720 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2721 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2722 def Test_prop_list() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2723 CheckDefAndScriptFailure(['prop_list("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2724 CheckDefAndScriptFailure(['prop_list(1, [])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2725 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2726 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2727 def Test_prop_remove() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2728 CheckDefAndScriptFailure(['prop_remove([])'], ['E1013: Argument 1: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2729 CheckDefAndScriptFailure(['prop_remove({}, "a")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2730 CheckDefAndScriptFailure(['prop_remove({}, 1, "b")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2731 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2732 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2733 def Test_prop_type_add() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2734 CheckDefAndScriptFailure(['prop_type_add({"a": 10}, "b")'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2735 CheckDefAndScriptFailure(['prop_type_add("a", "b")'], ['E1013: Argument 2: type mismatch, expected dict<any> but got string', 'E1206: Dictionary required for argument 2']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
2736 assert_fails("prop_type_add('', {highlight: 'Search'})", 'E474:') |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2737 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2738 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2739 def Test_prop_type_change() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2740 CheckDefAndScriptFailure(['prop_type_change({"a": 10}, "b")'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2741 CheckDefAndScriptFailure(['prop_type_change("a", "b")'], ['E1013: Argument 2: type mismatch, expected dict<any> but got string', 'E1206: Dictionary required for argument 2']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
2742 assert_fails("prop_type_change('', {highlight: 'Search'})", 'E474:') |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2743 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2744 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2745 def Test_prop_type_delete() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2746 CheckDefAndScriptFailure(['prop_type_delete({"a": 10})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2747 CheckDefAndScriptFailure(['prop_type_delete({"a": 10}, "b")'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2748 CheckDefAndScriptFailure(['prop_type_delete("a", "b")'], ['E1013: Argument 2: type mismatch, expected dict<any> but got string', 'E1206: Dictionary required for argument 2']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
2749 assert_fails("prop_type_delete('')", 'E474:') |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2750 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2751 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2752 def Test_prop_type_get() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2753 CheckDefAndScriptFailure(['prop_type_get({"a": 10})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2754 CheckDefAndScriptFailure(['prop_type_get({"a": 10}, "b")'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2755 CheckDefAndScriptFailure(['prop_type_get("a", "b")'], ['E1013: Argument 2: type mismatch, expected dict<any> but got string', 'E1206: Dictionary required for argument 2']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
2756 assert_fails("prop_type_get('')", 'E474:') |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2757 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2758 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2759 def Test_prop_type_list() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2760 CheckDefAndScriptFailure(['prop_type_list(["a"])'], ['E1013: Argument 1: type mismatch, expected dict<any> but got list<string>', 'E1206: Dictionary required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2761 CheckDefAndScriptFailure(['prop_type_list(2)'], ['E1013: Argument 1: type mismatch, expected dict<any> but got number', 'E1206: Dictionary required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2762 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2763 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2764 def Test_py3eval() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2765 if !has('python3') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2766 CheckFeature python3 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2767 endif |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2768 CheckDefAndScriptFailure(['py3eval([2])'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1174: String required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2769 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2770 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2771 def Test_pyeval() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2772 if !has('python') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2773 CheckFeature python |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2774 endif |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2775 CheckDefAndScriptFailure(['pyeval([2])'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1174: String required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2776 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2777 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2778 def Test_pyxeval() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2779 if !has('python') && !has('python3') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2780 CheckFeature python |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2781 endif |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2782 CheckDefAndScriptFailure(['pyxeval([2])'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1174: String required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2783 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2784 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2785 def Test_rand() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2786 CheckDefAndScriptFailure(['rand(10)'], ['E1013: Argument 1: type mismatch, expected list<number> but got number', 'E1211: List required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2787 CheckDefFailure(['rand(["a"])'], 'E1013: Argument 1: type mismatch, expected list<number> but got list<string>') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2788 assert_true(rand() >= 0) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2789 assert_true(rand(srand()) >= 0) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2790 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2791 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2792 def Test_range() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2793 CheckDefAndScriptFailure(['range("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2794 CheckDefAndScriptFailure(['range(10, "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2795 CheckDefAndScriptFailure(['range(10, 20, "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2796 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2797 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2798 def Test_readdir() |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2799 eval expand('sautest')->readdir((e) => e[0] !=# '.') |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2800 eval expand('sautest')->readdirex((e) => e.name[0] !=# '.') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2801 CheckDefAndScriptFailure(['readdir(["a"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2802 CheckDefAndScriptFailure(['readdir("a", "1", [3])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 3']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2803 if has('unix') |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2804 # only fails on Unix-like systems |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2805 assert_fails('readdir("")', 'E484: Can''t open file') |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2806 endif |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2807 enddef |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2808 |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
2809 def Test_readdirex() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2810 CheckDefAndScriptFailure(['readdirex(["a"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2811 CheckDefAndScriptFailure(['readdirex("a", "1", [3])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 3']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2812 if has('unix') |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2813 # only fails on Unix-like systems |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2814 assert_fails('readdirex("")', 'E484: Can''t open file') |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2815 endif |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2816 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2817 |
23602
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2818 def Test_readblob() |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2819 var blob = 0z12341234 |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2820 writefile(blob, 'Xreadblob') |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2821 var read: blob = readblob('Xreadblob') |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2822 assert_equal(blob, read) |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2823 |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2824 var lines =<< trim END |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2825 var read: list<string> = readblob('Xreadblob') |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2826 END |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2827 CheckDefAndScriptFailure(lines, 'E1012: Type mismatch; expected list<string> but got blob', 1) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2828 CheckDefExecAndScriptFailure(['readblob("")'], 'E484: Can''t open file <empty>') |
23602
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2829 delete('Xreadblob') |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2830 enddef |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2831 |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2832 def Test_readfile() |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2833 var text = ['aaa', 'bbb', 'ccc'] |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2834 writefile(text, 'Xreadfile') |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2835 var read: list<string> = readfile('Xreadfile') |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2836 assert_equal(text, read) |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2837 |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2838 var lines =<< trim END |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2839 var read: dict<string> = readfile('Xreadfile') |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2840 END |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2841 CheckDefAndScriptFailure(lines, 'E1012: Type mismatch; expected dict<string> but got list<string>', 1) |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2842 delete('Xreadfile') |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2843 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2844 CheckDefAndScriptFailure(['readfile("a", 0z10)'], ['E1013: Argument 2: type mismatch, expected string but got blob', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2845 CheckDefAndScriptFailure(['readfile("a", "b", "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2846 CheckDefExecAndScriptFailure(['readfile("")'], 'E1175: Non-empty string required for argument 1') |
23602
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2847 enddef |
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
23596
diff
changeset
|
2848 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2849 def Test_reduce() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2850 CheckDefAndScriptFailure(['reduce({a: 10}, "1")'], ['E1013: Argument 1: type mismatch, expected list<any> but got dict<number>', 'E1252: String, List or Blob required for argument 1']) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2851 assert_equal(6, [1, 2, 3]->reduce((r, c) => r + c, 0)) |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2852 assert_equal(11, 0z0506->reduce((r, c) => r + c, 0)) |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2853 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2854 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2855 def Test_reltime() |
25250
532faf893d37
patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Bram Moolenaar <Bram@vim.org>
parents:
25240
diff
changeset
|
2856 CheckFeature reltime |
532faf893d37
patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Bram Moolenaar <Bram@vim.org>
parents:
25240
diff
changeset
|
2857 |
532faf893d37
patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Bram Moolenaar <Bram@vim.org>
parents:
25240
diff
changeset
|
2858 CheckDefExecAndScriptFailure(['[]->reltime()'], 'E474:') |
532faf893d37
patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Bram Moolenaar <Bram@vim.org>
parents:
25240
diff
changeset
|
2859 CheckDefExecAndScriptFailure(['[]->reltime([])'], 'E474:') |
532faf893d37
patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Bram Moolenaar <Bram@vim.org>
parents:
25240
diff
changeset
|
2860 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2861 CheckDefAndScriptFailure(['reltime("x")'], ['E1013: Argument 1: type mismatch, expected list<number> but got string', 'E1211: List required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2862 CheckDefFailure(['reltime(["x", "y"])'], 'E1013: Argument 1: type mismatch, expected list<number> but got list<string>') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2863 CheckDefAndScriptFailure(['reltime([1, 2], 10)'], ['E1013: Argument 2: type mismatch, expected list<number> but got number', 'E1211: List required for argument 2']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2864 CheckDefFailure(['reltime([1, 2], ["a", "b"])'], 'E1013: Argument 2: type mismatch, expected list<number> but got list<string>') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2865 var start: list<any> = reltime() |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2866 assert_true(type(reltime(start)) == v:t_list) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2867 var end: list<any> = reltime() |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2868 assert_true(type(reltime(start, end)) == v:t_list) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2869 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2870 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2871 def Test_reltimefloat() |
25250
532faf893d37
patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Bram Moolenaar <Bram@vim.org>
parents:
25240
diff
changeset
|
2872 CheckFeature reltime |
532faf893d37
patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Bram Moolenaar <Bram@vim.org>
parents:
25240
diff
changeset
|
2873 |
532faf893d37
patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Bram Moolenaar <Bram@vim.org>
parents:
25240
diff
changeset
|
2874 CheckDefExecAndScriptFailure(['[]->reltimefloat()'], 'E474:') |
532faf893d37
patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Bram Moolenaar <Bram@vim.org>
parents:
25240
diff
changeset
|
2875 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2876 CheckDefAndScriptFailure(['reltimefloat("x")'], ['E1013: Argument 1: type mismatch, expected list<number> but got string', 'E1211: List required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2877 CheckDefFailure(['reltimefloat([1.1])'], 'E1013: Argument 1: type mismatch, expected list<number> but got list<float>') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2878 assert_true(type(reltimefloat(reltime())) == v:t_float) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2879 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2880 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2881 def Test_reltimestr() |
25250
532faf893d37
patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Bram Moolenaar <Bram@vim.org>
parents:
25240
diff
changeset
|
2882 CheckFeature reltime |
532faf893d37
patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Bram Moolenaar <Bram@vim.org>
parents:
25240
diff
changeset
|
2883 |
532faf893d37
patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Bram Moolenaar <Bram@vim.org>
parents:
25240
diff
changeset
|
2884 CheckDefExecAndScriptFailure(['[]->reltimestr()'], 'E474:') |
532faf893d37
patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Bram Moolenaar <Bram@vim.org>
parents:
25240
diff
changeset
|
2885 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2886 CheckDefAndScriptFailure(['reltimestr(true)'], ['E1013: Argument 1: type mismatch, expected list<number> but got bool', 'E1211: List required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2887 CheckDefFailure(['reltimestr([true])'], 'E1013: Argument 1: type mismatch, expected list<number> but got list<bool>') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2888 assert_true(type(reltimestr(reltime())) == v:t_string) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2889 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2890 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2891 def Test_remote_expr() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2892 CheckFeature clientserver |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2893 CheckEnv DISPLAY |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2894 CheckDefAndScriptFailure(['remote_expr(1, "b")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2895 CheckDefAndScriptFailure(['remote_expr("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2896 CheckDefAndScriptFailure(['remote_expr("a", "b", 3)'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2897 CheckDefAndScriptFailure(['remote_expr("a", "b", "c", "d")'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
2898 CheckDefExecAndScriptFailure(['remote_expr("", "")'], 'E241: Unable to send to ') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2899 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2900 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2901 def Test_remote_foreground() |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2902 CheckFeature clientserver |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2903 # remote_foreground() doesn't fail on MS-Windows |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2904 CheckNotMSWindows |
25143
54a547489e49
patch 8.2.3108: test for remote_foreground() fails
Bram Moolenaar <Bram@vim.org>
parents:
25110
diff
changeset
|
2905 CheckEnv DISPLAY |
54a547489e49
patch 8.2.3108: test for remote_foreground() fails
Bram Moolenaar <Bram@vim.org>
parents:
25110
diff
changeset
|
2906 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2907 CheckDefAndScriptFailure(['remote_foreground(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2908 assert_fails('remote_foreground("NonExistingServer")', 'E241:') |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
2909 assert_fails('remote_foreground("")', 'E241:') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2910 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2911 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2912 def Test_remote_peek() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2913 CheckFeature clientserver |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2914 CheckEnv DISPLAY |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2915 CheckDefAndScriptFailure(['remote_peek(0z10)'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2916 CheckDefAndScriptFailure(['remote_peek("a5b6c7", [1])'], ['E1013: Argument 2: type mismatch, expected string but got list<number>', 'E1174: String required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2917 CheckDefExecAndScriptFailure(['remote_peek("")'], 'E573: Invalid server id used') |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2918 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2919 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2920 def Test_remote_read() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2921 CheckFeature clientserver |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2922 CheckEnv DISPLAY |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2923 CheckDefAndScriptFailure(['remote_read(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2924 CheckDefAndScriptFailure(['remote_read("a", "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
2925 CheckDefExecAndScriptFailure(['remote_read("")'], 'E573: Invalid server id used') |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2926 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
2927 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2928 def Test_remote_send() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2929 CheckFeature clientserver |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2930 CheckEnv DISPLAY |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2931 CheckDefAndScriptFailure(['remote_send(1, "b")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2932 CheckDefAndScriptFailure(['remote_send("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2933 CheckDefAndScriptFailure(['remote_send("a", "b", 3)'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
2934 assert_fails('remote_send("", "")', 'E241:') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2935 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2936 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2937 def Test_remote_startserver() |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2938 CheckFeature clientserver |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
2939 CheckEnv DISPLAY |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2940 CheckDefAndScriptFailure(['remote_startserver({})'], ['E1013: Argument 1: type mismatch, expected string but got dict<unknown>', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2941 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2942 |
25290
8b7ea875afed
patch 8.2.3182: Vim9: crash when using removing items from a constant list
Bram Moolenaar <Bram@vim.org>
parents:
25288
diff
changeset
|
2943 def Test_remove_const_list() |
8b7ea875afed
patch 8.2.3182: Vim9: crash when using removing items from a constant list
Bram Moolenaar <Bram@vim.org>
parents:
25288
diff
changeset
|
2944 var l: list<number> = [1, 2, 3, 4] |
8b7ea875afed
patch 8.2.3182: Vim9: crash when using removing items from a constant list
Bram Moolenaar <Bram@vim.org>
parents:
25288
diff
changeset
|
2945 assert_equal([1, 2], remove(l, 0, 1)) |
8b7ea875afed
patch 8.2.3182: Vim9: crash when using removing items from a constant list
Bram Moolenaar <Bram@vim.org>
parents:
25288
diff
changeset
|
2946 assert_equal([3, 4], l) |
8b7ea875afed
patch 8.2.3182: Vim9: crash when using removing items from a constant list
Bram Moolenaar <Bram@vim.org>
parents:
25288
diff
changeset
|
2947 enddef |
8b7ea875afed
patch 8.2.3182: Vim9: crash when using removing items from a constant list
Bram Moolenaar <Bram@vim.org>
parents:
25288
diff
changeset
|
2948 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2949 def Test_remove() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2950 CheckDefAndScriptFailure(['remove("a", 1)'], ['E1013: Argument 1: type mismatch, expected list<any> but got string', 'E1228: List, Dictionary or Blob required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2951 CheckDefAndScriptFailure(['remove([], "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2952 CheckDefAndScriptFailure(['remove([], 1, "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2953 CheckDefAndScriptFailure(['remove({}, 1.1)'], ['E1013: Argument 2: type mismatch, expected string but got float', 'E1220: String or Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2954 CheckDefAndScriptFailure(['remove(0z10, "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2955 CheckDefAndScriptFailure(['remove(0z20, 1, "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2956 var l: any = [1, 2, 3, 4] |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2957 remove(l, 1) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2958 assert_equal([1, 3, 4], l) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2959 remove(l, 0, 1) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2960 assert_equal([4], l) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2961 var b: any = 0z1234.5678.90 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2962 remove(b, 1) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2963 assert_equal(0z1256.7890, b) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2964 remove(b, 1, 2) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2965 assert_equal(0z1290, b) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2966 var d: any = {a: 10, b: 20, c: 30} |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2967 remove(d, 'b') |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2968 assert_equal({a: 10, c: 30}, d) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2969 var d2: any = {1: 'a', 2: 'b', 3: 'c'} |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2970 remove(d2, 2) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2971 assert_equal({1: 'a', 3: 'c'}, d2) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2972 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
2973 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2974 def Test_remove_return_type() |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
2975 var l = remove({one: [1, 2], two: [3, 4]}, 'one') |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2976 var res = 0 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2977 for n in l |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2978 res += n |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2979 endfor |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2980 res->assert_equal(3) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2981 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2982 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2983 def Test_rename() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2984 CheckDefAndScriptFailure(['rename(1, "b")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2985 CheckDefAndScriptFailure(['rename("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
2986 rename('', '')->assert_equal(0) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2987 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
2988 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
2989 def Test_repeat() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2990 CheckDefAndScriptFailure(['repeat(1.1, 2)'], ['E1013: Argument 1: type mismatch, expected string but got float', 'E1224: String, Number or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
2991 CheckDefAndScriptFailure(['repeat({a: 10}, 2)'], ['E1013: Argument 1: type mismatch, expected string but got dict<', 'E1224: String, Number or List required for argument 1']) |
25449
5dce28f92d04
patch 8.2.3261: Vim9: when compiling repeat(123, N) return type is number
Bram Moolenaar <Bram@vim.org>
parents:
25443
diff
changeset
|
2992 var lines =<< trim END |
5dce28f92d04
patch 8.2.3261: Vim9: when compiling repeat(123, N) return type is number
Bram Moolenaar <Bram@vim.org>
parents:
25443
diff
changeset
|
2993 assert_equal('aaa', repeat('a', 3)) |
5dce28f92d04
patch 8.2.3261: Vim9: when compiling repeat(123, N) return type is number
Bram Moolenaar <Bram@vim.org>
parents:
25443
diff
changeset
|
2994 assert_equal('111', repeat(1, 3)) |
5dce28f92d04
patch 8.2.3261: Vim9: when compiling repeat(123, N) return type is number
Bram Moolenaar <Bram@vim.org>
parents:
25443
diff
changeset
|
2995 assert_equal([1, 1, 1], repeat([1], 3)) |
5dce28f92d04
patch 8.2.3261: Vim9: when compiling repeat(123, N) return type is number
Bram Moolenaar <Bram@vim.org>
parents:
25443
diff
changeset
|
2996 var s = '-' |
5dce28f92d04
patch 8.2.3261: Vim9: when compiling repeat(123, N) return type is number
Bram Moolenaar <Bram@vim.org>
parents:
25443
diff
changeset
|
2997 s ..= repeat(5, 3) |
5dce28f92d04
patch 8.2.3261: Vim9: when compiling repeat(123, N) return type is number
Bram Moolenaar <Bram@vim.org>
parents:
25443
diff
changeset
|
2998 assert_equal('-555', s) |
5dce28f92d04
patch 8.2.3261: Vim9: when compiling repeat(123, N) return type is number
Bram Moolenaar <Bram@vim.org>
parents:
25443
diff
changeset
|
2999 END |
5dce28f92d04
patch 8.2.3261: Vim9: when compiling repeat(123, N) return type is number
Bram Moolenaar <Bram@vim.org>
parents:
25443
diff
changeset
|
3000 CheckDefAndScriptSuccess(lines) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3001 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3002 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3003 def Test_resolve() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3004 CheckDefAndScriptFailure(['resolve([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3005 assert_equal('SomeFile', resolve('SomeFile')) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3006 resolve('')->assert_equal('') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3007 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3008 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3009 def Test_reverse() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3010 CheckDefAndScriptFailure(['reverse(10)'], ['E1013: Argument 1: type mismatch, expected list<any> but got number', 'E1226: List or Blob required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3011 CheckDefAndScriptFailure(['reverse("abc")'], ['E1013: Argument 1: type mismatch, expected list<any> but got string', 'E1226: List or Blob required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3012 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3013 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3014 def Test_reverse_return_type() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3015 var l = reverse([1, 2, 3]) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3016 var res = 0 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3017 for n in l |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3018 res += n |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3019 endfor |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3020 res->assert_equal(6) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3021 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3022 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3023 def Test_rubyeval() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3024 if !has('ruby') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3025 CheckFeature ruby |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3026 endif |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3027 CheckDefAndScriptFailure(['rubyeval([2])'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1174: String required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3028 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3029 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3030 def Test_screenattr() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3031 CheckDefAndScriptFailure(['screenattr("x", 1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3032 CheckDefAndScriptFailure(['screenattr(1, "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3033 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3034 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3035 def Test_screenchar() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3036 CheckDefAndScriptFailure(['screenchar("x", 1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3037 CheckDefAndScriptFailure(['screenchar(1, "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3038 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3039 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3040 def Test_screenchars() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3041 CheckDefAndScriptFailure(['screenchars("x", 1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3042 CheckDefAndScriptFailure(['screenchars(1, "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3043 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3044 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3045 def Test_screenpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3046 CheckDefAndScriptFailure(['screenpos("a", 1, 1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3047 CheckDefAndScriptFailure(['screenpos(1, "b", 1)'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3048 CheckDefAndScriptFailure(['screenpos(1, 1, "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3049 assert_equal({col: 1, row: 1, endcol: 1, curscol: 1}, screenpos(1, 1, 1)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3050 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3051 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3052 def Test_screenstring() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3053 CheckDefAndScriptFailure(['screenstring("x", 1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3054 CheckDefAndScriptFailure(['screenstring(1, "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3055 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3056 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3057 def Test_search() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3058 new |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3059 setline(1, ['foo', 'bar']) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3060 var val = 0 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3061 # skip expr returns boolean |
23428
5807e3958e38
patch 8.2.2257: Vim9: using -> for lambda is ambiguous
Bram Moolenaar <Bram@vim.org>
parents:
23404
diff
changeset
|
3062 search('bar', 'W', 0, 0, () => val == 1)->assert_equal(2) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3063 :1 |
23428
5807e3958e38
patch 8.2.2257: Vim9: using -> for lambda is ambiguous
Bram Moolenaar <Bram@vim.org>
parents:
23404
diff
changeset
|
3064 search('bar', 'W', 0, 0, () => val == 0)->assert_equal(0) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3065 # skip expr returns number, only 0 and 1 are accepted |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3066 :1 |
23428
5807e3958e38
patch 8.2.2257: Vim9: using -> for lambda is ambiguous
Bram Moolenaar <Bram@vim.org>
parents:
23404
diff
changeset
|
3067 search('bar', 'W', 0, 0, () => 0)->assert_equal(2) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3068 :1 |
23428
5807e3958e38
patch 8.2.2257: Vim9: using -> for lambda is ambiguous
Bram Moolenaar <Bram@vim.org>
parents:
23404
diff
changeset
|
3069 search('bar', 'W', 0, 0, () => 1)->assert_equal(0) |
5807e3958e38
patch 8.2.2257: Vim9: using -> for lambda is ambiguous
Bram Moolenaar <Bram@vim.org>
parents:
23404
diff
changeset
|
3070 assert_fails("search('bar', '', 0, 0, () => -1)", 'E1023:') |
5807e3958e38
patch 8.2.2257: Vim9: using -> for lambda is ambiguous
Bram Moolenaar <Bram@vim.org>
parents:
23404
diff
changeset
|
3071 assert_fails("search('bar', '', 0, 0, () => -1)", 'E1023:') |
24608
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3072 |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3073 setline(1, "find this word") |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3074 normal gg |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3075 var col = 7 |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3076 assert_equal(1, search('this', '', 0, 0, 'col(".") > col')) |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3077 normal 0 |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3078 assert_equal([1, 6], searchpos('this', '', 0, 0, 'col(".") > col')) |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3079 |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3080 col = 5 |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3081 normal 0 |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3082 assert_equal(0, search('this', '', 0, 0, 'col(".") > col')) |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3083 normal 0 |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3084 assert_equal([0, 0], searchpos('this', '', 0, 0, 'col(".") > col')) |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3085 bwipe! |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3086 CheckDefAndScriptFailure(['search(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3087 CheckDefAndScriptFailure(['search("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3088 CheckDefAndScriptFailure(['search("a", "b", "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3089 CheckDefAndScriptFailure(['search("a", "b", 3, "d")'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
26751
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3090 new |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3091 setline(1, "match this") |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3092 CheckDefAndScriptFailure(['search("a", "", 9, 0, [0])'], ['E1013: Argument 5: type mismatch, expected func(...): any but got list<number>', 'E730: Using a List as a String']) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3093 bwipe! |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3094 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3095 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3096 def Test_searchcount() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3097 new |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3098 setline(1, "foo bar") |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3099 :/foo |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
3100 searchcount({recompute: true}) |
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
3101 ->assert_equal({ |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3102 exact_match: 1, |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3103 current: 1, |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3104 total: 1, |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3105 maxcount: 99, |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3106 incomplete: 0}) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3107 bwipe! |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3108 CheckDefAndScriptFailure(['searchcount([1])'], ['E1013: Argument 1: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 1']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3109 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3110 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3111 def Test_searchdecl() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3112 searchdecl('blah', true, true)->assert_equal(1) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3113 CheckDefAndScriptFailure(['searchdecl(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3114 CheckDefAndScriptFailure(['searchdecl("a", 2)'], ['E1013: Argument 2: type mismatch, expected bool but got number', 'E1212: Bool required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3115 CheckDefAndScriptFailure(['searchdecl("a", true, 2)'], ['E1013: Argument 3: type mismatch, expected bool but got number', 'E1212: Bool required for argument 3']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3116 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3117 |
24606
a4fda40e0bb9
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24584
diff
changeset
|
3118 def Test_searchpair() |
a4fda40e0bb9
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24584
diff
changeset
|
3119 new |
a4fda40e0bb9
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24584
diff
changeset
|
3120 setline(1, "here { and } there") |
24608
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3121 |
24606
a4fda40e0bb9
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24584
diff
changeset
|
3122 normal f{ |
a4fda40e0bb9
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24584
diff
changeset
|
3123 var col = 15 |
a4fda40e0bb9
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24584
diff
changeset
|
3124 assert_equal(1, searchpair('{', '', '}', '', 'col(".") > col')) |
a4fda40e0bb9
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24584
diff
changeset
|
3125 assert_equal(12, col('.')) |
24608
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3126 normal 0f{ |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3127 assert_equal([1, 12], searchpairpos('{', '', '}', '', 'col(".") > col')) |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3128 |
24606
a4fda40e0bb9
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24584
diff
changeset
|
3129 col = 8 |
a4fda40e0bb9
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24584
diff
changeset
|
3130 normal 0f{ |
a4fda40e0bb9
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24584
diff
changeset
|
3131 assert_equal(0, searchpair('{', '', '}', '', 'col(".") > col')) |
a4fda40e0bb9
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24584
diff
changeset
|
3132 assert_equal(6, col('.')) |
24608
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3133 normal 0f{ |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3134 assert_equal([0, 0], searchpairpos('{', '', '}', '', 'col(".") > col')) |
cb031f421ece
patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24606
diff
changeset
|
3135 |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3136 # searchpair with empty strings |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3137 normal 8| |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3138 assert_equal(0, searchpair('', '', '')) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3139 assert_equal([0, 0], searchpairpos('', '', '')) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3140 |
24637
4a4f64cdc798
patch 8.2.2857: Vim9: exception in ISN_INSTR caught at wrong level
Bram Moolenaar <Bram@vim.org>
parents:
24608
diff
changeset
|
3141 var lines =<< trim END |
4a4f64cdc798
patch 8.2.2857: Vim9: exception in ISN_INSTR caught at wrong level
Bram Moolenaar <Bram@vim.org>
parents:
24608
diff
changeset
|
3142 vim9script |
4a4f64cdc798
patch 8.2.2857: Vim9: exception in ISN_INSTR caught at wrong level
Bram Moolenaar <Bram@vim.org>
parents:
24608
diff
changeset
|
3143 setline(1, '()') |
4a4f64cdc798
patch 8.2.2857: Vim9: exception in ISN_INSTR caught at wrong level
Bram Moolenaar <Bram@vim.org>
parents:
24608
diff
changeset
|
3144 normal gg |
26751
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3145 func RetList() |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3146 return [0] |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3147 endfunc |
24637
4a4f64cdc798
patch 8.2.2857: Vim9: exception in ISN_INSTR caught at wrong level
Bram Moolenaar <Bram@vim.org>
parents:
24608
diff
changeset
|
3148 def Fail() |
4a4f64cdc798
patch 8.2.2857: Vim9: exception in ISN_INSTR caught at wrong level
Bram Moolenaar <Bram@vim.org>
parents:
24608
diff
changeset
|
3149 try |
26751
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3150 searchpairpos('(', '', ')', 'nW', 'RetList()') |
24637
4a4f64cdc798
patch 8.2.2857: Vim9: exception in ISN_INSTR caught at wrong level
Bram Moolenaar <Bram@vim.org>
parents:
24608
diff
changeset
|
3151 catch |
24659
982516c8d692
patch 8.2.2868: Vim9: when executing compiled expression trylevel is changed
Bram Moolenaar <Bram@vim.org>
parents:
24637
diff
changeset
|
3152 g:caught = 'yes' |
24637
4a4f64cdc798
patch 8.2.2857: Vim9: exception in ISN_INSTR caught at wrong level
Bram Moolenaar <Bram@vim.org>
parents:
24608
diff
changeset
|
3153 endtry |
4a4f64cdc798
patch 8.2.2857: Vim9: exception in ISN_INSTR caught at wrong level
Bram Moolenaar <Bram@vim.org>
parents:
24608
diff
changeset
|
3154 enddef |
4a4f64cdc798
patch 8.2.2857: Vim9: exception in ISN_INSTR caught at wrong level
Bram Moolenaar <Bram@vim.org>
parents:
24608
diff
changeset
|
3155 Fail() |
4a4f64cdc798
patch 8.2.2857: Vim9: exception in ISN_INSTR caught at wrong level
Bram Moolenaar <Bram@vim.org>
parents:
24608
diff
changeset
|
3156 END |
24659
982516c8d692
patch 8.2.2868: Vim9: when executing compiled expression trylevel is changed
Bram Moolenaar <Bram@vim.org>
parents:
24637
diff
changeset
|
3157 CheckScriptSuccess(lines) |
982516c8d692
patch 8.2.2868: Vim9: when executing compiled expression trylevel is changed
Bram Moolenaar <Bram@vim.org>
parents:
24637
diff
changeset
|
3158 assert_equal('yes', g:caught) |
982516c8d692
patch 8.2.2868: Vim9: when executing compiled expression trylevel is changed
Bram Moolenaar <Bram@vim.org>
parents:
24637
diff
changeset
|
3159 unlet g:caught |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
3160 bwipe! |
25340
37001467805f
patch 8.2.3207: Vim9: crash when compiling string fails
Bram Moolenaar <Bram@vim.org>
parents:
25338
diff
changeset
|
3161 |
37001467805f
patch 8.2.3207: Vim9: crash when compiling string fails
Bram Moolenaar <Bram@vim.org>
parents:
25338
diff
changeset
|
3162 lines =<< trim END |
25346
f874e7095878
patch 8.2.3210: Vim9: searchpair() sixth argument is compiled
Bram Moolenaar <Bram@vim.org>
parents:
25340
diff
changeset
|
3163 echo searchpair("a", "b", "c", "d", "f", 33) |
25340
37001467805f
patch 8.2.3207: Vim9: crash when compiling string fails
Bram Moolenaar <Bram@vim.org>
parents:
25338
diff
changeset
|
3164 END |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3165 CheckDefAndScriptFailure(lines, ['E1001: Variable not found: f', 'E475: Invalid argument: d']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3166 |
26751
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3167 var errors = ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1'] |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3168 CheckDefAndScriptFailure(['searchpair(1, "b", "c")'], errors) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3169 CheckDefAndScriptFailure(['searchpairpos(1, "b", "c")'], errors) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3170 |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3171 errors = ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2'] |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3172 CheckDefAndScriptFailure(['searchpair("a", 2, "c")'], errors) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3173 CheckDefAndScriptFailure(['searchpairpos("a", 2, "c")'], errors) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3174 |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3175 errors = ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3'] |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3176 CheckDefAndScriptFailure(['searchpair("a", "b", 3)'], errors) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3177 CheckDefAndScriptFailure(['searchpairpos("a", "b", 3)'], errors) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3178 |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3179 errors = ['E1013: Argument 4: type mismatch, expected string but got number', 'E1174: String required for argument 4'] |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3180 CheckDefAndScriptFailure(['searchpair("a", "b", "c", 4)'], errors) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3181 |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3182 new |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3183 setline(1, "match this") |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3184 errors = ['E1013: Argument 5: type mismatch, expected func(...): any but got list<number>', 'E730: Using a List as a String'] |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3185 CheckDefAndScriptFailure(['searchpair("a", "b", "c", "r", [0])'], errors) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3186 CheckDefAndScriptFailure(['searchpairpos("a", "b", "c", "r", [0])'], errors) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3187 bwipe! |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3188 |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3189 errors = ['E1013: Argument 6: type mismatch, expected number but got string', 'E1210: Number required for argument 6'] |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3190 CheckDefAndScriptFailure(['searchpair("a", "b", "c", "r", "1", "f")'], errors) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3191 CheckDefAndScriptFailure(['searchpairpos("a", "b", "c", "r", "1", "f")'], errors) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3192 |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3193 errors = ['E1013: Argument 7: type mismatch, expected number but got string', 'E1210: Number required for argument 7'] |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3194 CheckDefAndScriptFailure(['searchpair("a", "b", "c", "r", "1", 3, "g")'], errors) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3195 CheckDefAndScriptFailure(['searchpairpos("a", "b", "c", "r", "1", 3, "g")'], errors) |
24606
a4fda40e0bb9
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24584
diff
changeset
|
3196 enddef |
a4fda40e0bb9
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Bram Moolenaar <Bram@vim.org>
parents:
24584
diff
changeset
|
3197 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3198 def Test_searchpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3199 CheckDefAndScriptFailure(['searchpos(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3200 CheckDefAndScriptFailure(['searchpos("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3201 CheckDefAndScriptFailure(['searchpos("a", "b", "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3202 CheckDefAndScriptFailure(['searchpos("a", "b", 3, "d")'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
26751
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3203 new |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3204 setline(1, "match this") |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3205 CheckDefAndScriptFailure(['searchpos("a", "", 9, 0, [0])'], ['E1013: Argument 5: type mismatch, expected func(...): any but got list<number>', 'E730: Using a List as a String']) |
4ea53126f78f
patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
26737
diff
changeset
|
3206 bwipe! |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3207 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3208 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3209 def Test_server2client() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3210 CheckFeature clientserver |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3211 CheckEnv DISPLAY |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3212 CheckDefAndScriptFailure(['server2client(10, "b")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3213 CheckDefAndScriptFailure(['server2client("a", 10)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3214 CheckDefExecAndScriptFailure(['server2client("", "a")'], 'E573: Invalid server id used') |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
3215 CheckDefExecAndScriptFailure(['server2client("", "")'], 'E573: Invalid server id used') |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3216 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3217 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3218 def Test_shellescape() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3219 CheckDefAndScriptFailure(['shellescape(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3220 CheckDefAndScriptFailure(['shellescape("a", 2)'], ['E1013: Argument 2: type mismatch, expected bool but got number', 'E1212: Bool required for argument 2']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3221 if has('unix') |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3222 assert_equal("''", shellescape('')) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3223 endif |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3224 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3225 |
23788
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3226 def Test_set_get_bufline() |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3227 # similar to Test_setbufline_getbufline() |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3228 var lines =<< trim END |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3229 new |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3230 var b = bufnr('%') |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3231 hide |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3232 assert_equal(0, setbufline(b, 1, ['foo', 'bar'])) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3233 assert_equal(['foo'], getbufline(b, 1)) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3234 assert_equal(['bar'], getbufline(b, '$')) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3235 assert_equal(['foo', 'bar'], getbufline(b, 1, 2)) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3236 exe "bd!" b |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3237 assert_equal([], getbufline(b, 1, 2)) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3238 |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3239 split Xtest |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3240 setline(1, ['a', 'b', 'c']) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3241 b = bufnr('%') |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3242 wincmd w |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3243 |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3244 assert_equal(1, setbufline(b, 5, 'x')) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3245 assert_equal(1, setbufline(b, 5, ['x'])) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3246 assert_equal(1, setbufline(b, 5, [])) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3247 assert_equal(1, setbufline(b, 5, test_null_list())) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3248 |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3249 assert_equal(1, 'x'->setbufline(bufnr('$') + 1, 1)) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3250 assert_equal(1, ['x']->setbufline(bufnr('$') + 1, 1)) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3251 assert_equal(1, []->setbufline(bufnr('$') + 1, 1)) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3252 assert_equal(1, test_null_list()->setbufline(bufnr('$') + 1, 1)) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3253 |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3254 assert_equal(['a', 'b', 'c'], getbufline(b, 1, '$')) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3255 |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3256 assert_equal(0, setbufline(b, 4, ['d', 'e'])) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3257 assert_equal(['c'], b->getbufline(3)) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3258 assert_equal(['d'], getbufline(b, 4)) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3259 assert_equal(['e'], getbufline(b, 5)) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3260 assert_equal([], getbufline(b, 6)) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3261 assert_equal([], getbufline(b, 2, 1)) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3262 |
23875
54b583156d53
patch 8.2.2479: set/getbufline test fails without the job feature
Bram Moolenaar <Bram@vim.org>
parents:
23827
diff
changeset
|
3263 if has('job') |
24812
8fdf839af1f4
patch 8.2.2944: Vim9: no error when using job or channel as a string
Bram Moolenaar <Bram@vim.org>
parents:
24808
diff
changeset
|
3264 setbufline(b, 2, [function('eval'), {key: 123}, string(test_null_job())]) |
23875
54b583156d53
patch 8.2.2479: set/getbufline test fails without the job feature
Bram Moolenaar <Bram@vim.org>
parents:
23827
diff
changeset
|
3265 assert_equal(["function('eval')", |
54b583156d53
patch 8.2.2479: set/getbufline test fails without the job feature
Bram Moolenaar <Bram@vim.org>
parents:
23827
diff
changeset
|
3266 "{'key': 123}", |
54b583156d53
patch 8.2.2479: set/getbufline test fails without the job feature
Bram Moolenaar <Bram@vim.org>
parents:
23827
diff
changeset
|
3267 "no process"], |
54b583156d53
patch 8.2.2479: set/getbufline test fails without the job feature
Bram Moolenaar <Bram@vim.org>
parents:
23827
diff
changeset
|
3268 getbufline(b, 2, 4)) |
54b583156d53
patch 8.2.2479: set/getbufline test fails without the job feature
Bram Moolenaar <Bram@vim.org>
parents:
23827
diff
changeset
|
3269 endif |
23788
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3270 |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3271 exe 'bwipe! ' .. b |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3272 END |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3273 CheckDefAndScriptSuccess(lines) |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3274 enddef |
d12ef361d9de
patch 8.2.2435: setline() gives an error for some types
Bram Moolenaar <Bram@vim.org>
parents:
23786
diff
changeset
|
3275 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3276 def Test_setbufvar() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3277 setbufvar(bufnr('%'), '&syntax', 'vim') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3278 &syntax->assert_equal('vim') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3279 setbufvar(bufnr('%'), '&ts', 16) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3280 &ts->assert_equal(16) |
23483
ce7d6b461660
patch 8.2.2284: Vim9: cannot set an option to a boolean value
Bram Moolenaar <Bram@vim.org>
parents:
23458
diff
changeset
|
3281 setbufvar(bufnr('%'), '&ai', true) |
ce7d6b461660
patch 8.2.2284: Vim9: cannot set an option to a boolean value
Bram Moolenaar <Bram@vim.org>
parents:
23458
diff
changeset
|
3282 &ai->assert_equal(true) |
ce7d6b461660
patch 8.2.2284: Vim9: cannot set an option to a boolean value
Bram Moolenaar <Bram@vim.org>
parents:
23458
diff
changeset
|
3283 setbufvar(bufnr('%'), '&ft', 'filetype') |
ce7d6b461660
patch 8.2.2284: Vim9: cannot set an option to a boolean value
Bram Moolenaar <Bram@vim.org>
parents:
23458
diff
changeset
|
3284 &ft->assert_equal('filetype') |
ce7d6b461660
patch 8.2.2284: Vim9: cannot set an option to a boolean value
Bram Moolenaar <Bram@vim.org>
parents:
23458
diff
changeset
|
3285 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3286 settabwinvar(1, 1, '&syntax', 'vam') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3287 &syntax->assert_equal('vam') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3288 settabwinvar(1, 1, '&ts', 15) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3289 &ts->assert_equal(15) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3290 setlocal ts=8 |
23485
198ad7ef2420
patch 8.2.2285: Vim9: cannot set an option to a false
Bram Moolenaar <Bram@vim.org>
parents:
23483
diff
changeset
|
3291 settabwinvar(1, 1, '&list', false) |
198ad7ef2420
patch 8.2.2285: Vim9: cannot set an option to a false
Bram Moolenaar <Bram@vim.org>
parents:
23483
diff
changeset
|
3292 &list->assert_equal(false) |
23483
ce7d6b461660
patch 8.2.2284: Vim9: cannot set an option to a boolean value
Bram Moolenaar <Bram@vim.org>
parents:
23458
diff
changeset
|
3293 settabwinvar(1, 1, '&list', true) |
ce7d6b461660
patch 8.2.2284: Vim9: cannot set an option to a boolean value
Bram Moolenaar <Bram@vim.org>
parents:
23458
diff
changeset
|
3294 &list->assert_equal(true) |
ce7d6b461660
patch 8.2.2284: Vim9: cannot set an option to a boolean value
Bram Moolenaar <Bram@vim.org>
parents:
23458
diff
changeset
|
3295 setlocal list& |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3296 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3297 setbufvar('%', 'myvar', 123) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3298 getbufvar('%', 'myvar')->assert_equal(123) |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
3299 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3300 CheckDefAndScriptFailure(['setbufvar(true, "v", 3)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3301 CheckDefAndScriptFailure(['setbufvar(1, 2, 3)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3302 assert_fails('setbufvar("%", "", 10)', 'E461: Illegal variable name') |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3303 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3304 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3305 def Test_setbufline() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3306 new |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3307 var bnum = bufnr('%') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3308 :wincmd w |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3309 setbufline(bnum, 1, range(1, 3)) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3310 setbufline(bnum, 4, 'one') |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3311 setbufline(bnum, 5, 10) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3312 setbufline(bnum, 6, ['two', 11]) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3313 assert_equal(['1', '2', '3', 'one', '10', 'two', '11'], getbufline(bnum, 1, '$')) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3314 CheckDefAndScriptFailure(['setbufline([1], 1, "x")'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3315 CheckDefAndScriptFailure(['setbufline(1, [1], "x")'], ['E1013: Argument 2: type mismatch, expected string but got list<number>', 'E1220: String or Number required for argument 2']) |
26775
2df40c348c70
patch 8.2.3916: no error for passing an invalid line number to append()
Bram Moolenaar <Bram@vim.org>
parents:
26765
diff
changeset
|
3316 CheckDefExecAndScriptFailure(['setbufline(' .. bnum .. ', -1, "x")'], 'E966: Invalid line number: -1') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3317 CheckDefAndScriptFailure(['setbufline(1, 1, {"a": 10})'], ['E1013: Argument 3: type mismatch, expected string but got dict<number>', 'E1224: String, Number or List required for argument 3']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3318 bnum->bufwinid()->win_gotoid() |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
3319 setbufline('', 1, 'nombres') |
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
3320 getline(1)->assert_equal('nombres') |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3321 bw! |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3322 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3323 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3324 def Test_setcellwidths() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3325 CheckDefAndScriptFailure(['setcellwidths(1)'], ['E1013: Argument 1: type mismatch, expected list<any> but got number', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3326 CheckDefAndScriptFailure(['setcellwidths({"a": 10})'], ['E1013: Argument 1: type mismatch, expected list<any> but got dict<number>', 'E1211: List required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3327 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3328 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3329 def Test_setcharpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3330 CheckDefAndScriptFailure(['setcharpos(1, [])'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3331 CheckDefFailure(['setcharpos(".", ["a"])'], 'E1013: Argument 2: type mismatch, expected list<number> but got list<string>') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3332 CheckDefAndScriptFailure(['setcharpos(".", 1)'], ['E1013: Argument 2: type mismatch, expected list<number> but got number', 'E1211: List required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3333 CheckDefExecAndScriptFailure(['setcharpos("", [0, 1, 1, 1])'], 'E474: Invalid argument') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3334 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3335 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3336 def Test_setcharsearch() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3337 CheckDefAndScriptFailure(['setcharsearch("x")'], ['E1013: Argument 1: type mismatch, expected dict<any> but got string', 'E1206: Dictionary required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3338 CheckDefAndScriptFailure(['setcharsearch([])'], ['E1013: Argument 1: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 1']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3339 var d: dict<any> = {char: 'x', forward: 1, until: 1} |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3340 setcharsearch(d) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3341 assert_equal(d, getcharsearch()) |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3342 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3343 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3344 def Test_setcmdpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3345 CheckDefAndScriptFailure(['setcmdpos("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3346 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3347 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3348 def Test_setcursorcharpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3349 CheckDefAndScriptFailure(['setcursorcharpos(0z10, 1)'], ['E1013: Argument 1: type mismatch, expected number but got blob', 'E1224: String, Number or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3350 CheckDefAndScriptFailure(['setcursorcharpos(1, "2")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3351 CheckDefAndScriptFailure(['setcursorcharpos(1, 2, "3")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3352 CheckDefExecAndScriptFailure(['setcursorcharpos("", 10)'], 'E1209: Invalid value for a line number') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3353 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3354 |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
3355 def Test_setenv() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3356 CheckDefAndScriptFailure(['setenv(1, 2)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3357 assert_equal(0, setenv('', '')) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3358 assert_equal(0, setenv('', v:null)) |
25368
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
3359 enddef |
1ffa8eb30353
patch 8.2.3221: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25366
diff
changeset
|
3360 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3361 def Test_setfperm() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3362 CheckDefAndScriptFailure(['setfperm(1, "b")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3363 CheckDefAndScriptFailure(['setfperm("a", 0z10)'], ['E1013: Argument 2: type mismatch, expected string but got blob', 'E1174: String required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3364 CheckDefExecAndScriptFailure(['setfperm("Xfile", "")'], 'E475: Invalid argument') |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3365 CheckDefExecAndScriptFailure(['setfperm("", "")'], 'E475: Invalid argument') |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3366 assert_equal(0, setfperm('', 'rw-r--r--')) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3367 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3368 |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
3369 def Test_setline() |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
3370 new |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
3371 setline(1, range(1, 4)) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
3372 assert_equal(['1', '2', '3', '4'], getline(1, '$')) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
3373 setline(1, ['a', 'b', 'c', 'd']) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
3374 assert_equal(['a', 'b', 'c', 'd'], getline(1, '$')) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
3375 setline(1, 'one') |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
3376 assert_equal(['one', 'b', 'c', 'd'], getline(1, '$')) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3377 setline(1, 10) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3378 assert_equal(['10', 'b', 'c', 'd'], getline(1, '$')) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3379 CheckDefAndScriptFailure(['setline([1], "x")'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1220: String or Number required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3380 CheckDefExecAndScriptFailure(['setline("", "x")'], 'E1209: Invalid value for a line number') |
26775
2df40c348c70
patch 8.2.3916: no error for passing an invalid line number to append()
Bram Moolenaar <Bram@vim.org>
parents:
26765
diff
changeset
|
3381 CheckDefExecAndScriptFailure(['setline(-1, "x")'], 'E966: Invalid line number: -1') |
26782
b7b82279426f
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
Bram Moolenaar <Bram@vim.org>
parents:
26775
diff
changeset
|
3382 assert_fails('setline(".a", "x")', ['E1209:', 'E1209:']) |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
3383 bw! |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
3384 enddef |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
3385 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3386 def Test_setloclist() |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
3387 var items = [{filename: '/tmp/file', lnum: 1, valid: true}] |
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
3388 var what = {items: items} |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3389 setqflist([], ' ', what) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3390 setloclist(0, [], ' ', what) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3391 CheckDefAndScriptFailure(['setloclist("1", [])'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3392 CheckDefAndScriptFailure(['setloclist(1, 2)'], ['E1013: Argument 2: type mismatch, expected list<any> but got number', 'E1211: List required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3393 CheckDefAndScriptFailure(['setloclist(1, [], 3)'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3394 CheckDefAndScriptFailure(['setloclist(1, [], "a", [])'], ['E1013: Argument 4: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 4']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3395 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3396 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3397 def Test_setmatches() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3398 CheckDefAndScriptFailure(['setmatches({})'], ['E1013: Argument 1: type mismatch, expected list<any> but got dict<unknown>', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3399 CheckDefAndScriptFailure(['setmatches([], "1")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3400 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3401 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3402 def Test_setpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3403 CheckDefAndScriptFailure(['setpos(1, [])'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3404 CheckDefFailure(['setpos(".", ["a"])'], 'E1013: Argument 2: type mismatch, expected list<number> but got list<string>') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3405 CheckDefAndScriptFailure(['setpos(".", 1)'], ['E1013: Argument 2: type mismatch, expected list<number> but got number', 'E1211: List required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3406 CheckDefExecAndScriptFailure(['setpos("", [0, 1, 1, 1])'], 'E474: Invalid argument') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3407 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3408 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3409 def Test_setqflist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3410 CheckDefAndScriptFailure(['setqflist(1, "")'], ['E1013: Argument 1: type mismatch, expected list<any> but got number', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3411 CheckDefAndScriptFailure(['setqflist([], 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3412 CheckDefAndScriptFailure(['setqflist([], "", [])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 3']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3413 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3414 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3415 def Test_setreg() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3416 setreg('a', ['aaa', 'bbb', 'ccc']) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3417 var reginfo = getreginfo('a') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3418 setreg('a', reginfo) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3419 getreginfo('a')->assert_equal(reginfo) |
23909
5db7d275543c
patch 8.2.2497: no error when using more than one character for a register
Bram Moolenaar <Bram@vim.org>
parents:
23875
diff
changeset
|
3420 assert_fails('setreg("ab", 0)', 'E1162:') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3421 CheckDefAndScriptFailure(['setreg(1, "b")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3422 CheckDefAndScriptFailure(['setreg("a", "b", 3)'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3423 setreg('', '1a2b3c') |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3424 assert_equal('1a2b3c', @") |
25525
8880eb140a00
patch 8.2.3299: Vim9: exists() does not handle much at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25479
diff
changeset
|
3425 enddef |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3426 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3427 def Test_settabvar() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3428 CheckDefAndScriptFailure(['settabvar("a", "b", 1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3429 CheckDefAndScriptFailure(['settabvar(1, 2, "c")'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3430 assert_fails('settabvar(1, "", 10)', 'E461: Illegal variable name') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3431 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3432 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3433 def Test_settabwinvar() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3434 CheckDefAndScriptFailure(['settabwinvar("a", 2, "c", true)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3435 CheckDefAndScriptFailure(['settabwinvar(1, "b", "c", [])'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3436 CheckDefAndScriptFailure(['settabwinvar(1, 1, 3, {})'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3437 assert_fails('settabwinvar(1, 1, "", 10)', 'E461: Illegal variable name') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3438 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3439 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3440 def Test_settagstack() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3441 CheckDefAndScriptFailure(['settagstack(true, {})'], ['E1013: Argument 1: type mismatch, expected number but got bool', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3442 CheckDefAndScriptFailure(['settagstack(1, [1])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3443 CheckDefAndScriptFailure(['settagstack(1, {}, 2)'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3444 assert_fails('settagstack(1, {}, "")', 'E962: Invalid action') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3445 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3446 |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3447 def Test_setwinvar() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3448 CheckDefAndScriptFailure(['setwinvar("a", "b", 1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3449 CheckDefAndScriptFailure(['setwinvar(1, 2, "c")'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3450 assert_fails('setwinvar(1, "", 10)', 'E461: Illegal variable name') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3451 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3452 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3453 def Test_sha256() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3454 CheckDefAndScriptFailure(['sha256(100)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3455 CheckDefAndScriptFailure(['sha256(0zABCD)'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3456 assert_equal('ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad', sha256('abc')) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3457 assert_equal('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', sha256('')) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3458 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3459 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3460 def Test_shiftwidth() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3461 CheckDefAndScriptFailure(['shiftwidth("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3462 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3463 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3464 def Test_sign_define() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3465 CheckDefAndScriptFailure(['sign_define({"a": 10})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1222: String or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3466 CheckDefAndScriptFailure(['sign_define({"a": 10}, "b")'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1222: String or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3467 CheckDefAndScriptFailure(['sign_define("a", ["b"])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<string>', 'E1206: Dictionary required for argument 2']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3468 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3469 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3470 def Test_sign_getdefined() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3471 CheckDefAndScriptFailure(['sign_getdefined(["x"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3472 CheckDefAndScriptFailure(['sign_getdefined(2)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3473 sign_getdefined('')->assert_equal([]) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3474 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3475 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3476 def Test_sign_getplaced() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3477 CheckDefAndScriptFailure(['sign_getplaced(["x"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3478 CheckDefAndScriptFailure(['sign_getplaced(1, ["a"])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<string>', 'E1206: Dictionary required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3479 CheckDefAndScriptFailure(['sign_getplaced("a", 1.1)'], ['E1013: Argument 2: type mismatch, expected dict<any> but got float', 'E1206: Dictionary required for argument 2']) |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
3480 CheckDefExecAndScriptFailure(['sign_getplaced(bufnr(), {lnum: ""})'], 'E1030: Using a String as a Number:') |
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
3481 sign_getplaced('')->assert_equal([{signs: [], bufnr: bufnr()}]) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3482 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3483 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3484 def Test_sign_jump() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3485 CheckDefAndScriptFailure(['sign_jump("a", "b", "c")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3486 CheckDefAndScriptFailure(['sign_jump(1, 2, 3)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3487 CheckDefAndScriptFailure(['sign_jump(1, "b", true)'], ['E1013: Argument 3: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 3']) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3488 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3489 |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3490 def Test_sign_place() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3491 CheckDefAndScriptFailure(['sign_place("a", "b", "c", "d")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3492 CheckDefAndScriptFailure(['sign_place(1, 2, "c", "d")'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3493 CheckDefAndScriptFailure(['sign_place(1, "b", 3, "d")'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3494 CheckDefAndScriptFailure(['sign_place(1, "b", "c", 1.1)'], ['E1013: Argument 4: type mismatch, expected string but got float', 'E1220: String or Number required for argument 4']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3495 CheckDefAndScriptFailure(['sign_place(1, "b", "c", "d", [1])'], ['E1013: Argument 5: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 5']) |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
3496 CheckDefExecAndScriptFailure(['sign_place(0, "", "MySign", bufnr(), {lnum: ""})'], 'E1209: Invalid value for a line number: ""') |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3497 assert_fails("sign_place(0, '', '', '')", 'E155:') |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3498 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3499 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3500 def Test_sign_placelist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3501 CheckDefAndScriptFailure(['sign_placelist("x")'], ['E1013: Argument 1: type mismatch, expected list<any> but got string', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3502 CheckDefAndScriptFailure(['sign_placelist({"a": 10})'], ['E1013: Argument 1: type mismatch, expected list<any> but got dict<number>', 'E1211: List required for argument 1']) |
25850
6f615b2fdc66
patch 8.2.3459: Vim9: need more tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25844
diff
changeset
|
3503 CheckDefExecAndScriptFailure(['sign_placelist([{"name": "MySign", "buffer": bufnr(), "lnum": ""}])'], 'E1209: Invalid value for a line number: ""') |
26145
3da380450cce
patch 8.2.3605: cannot clear and unlinke a highlight group with hlset()
Bram Moolenaar <Bram@vim.org>
parents:
26089
diff
changeset
|
3504 assert_fails('sign_placelist([{name: "MySign", buffer: "", lnum: 1}])', 'E155:') |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3505 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3506 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3507 def Test_sign_undefine() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3508 CheckDefAndScriptFailure(['sign_undefine({})'], ['E1013: Argument 1: type mismatch, expected string but got dict<unknown>', 'E1222: String or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3509 CheckDefAndScriptFailure(['sign_undefine([1])'], ['E1013: Argument 1: type mismatch, expected list<string> but got list<number>', 'E155: Unknown sign:']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3510 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3511 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3512 def Test_sign_unplace() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3513 CheckDefAndScriptFailure(['sign_unplace({"a": 10})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3514 CheckDefAndScriptFailure(['sign_unplace({"a": 10}, "b")'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3515 CheckDefAndScriptFailure(['sign_unplace("a", ["b"])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<string>', 'E1206: Dictionary required for argument 2']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3516 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
3517 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3518 def Test_sign_unplacelist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3519 CheckDefAndScriptFailure(['sign_unplacelist("x")'], ['E1013: Argument 1: type mismatch, expected list<any> but got string', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3520 CheckDefAndScriptFailure(['sign_unplacelist({"a": 10})'], ['E1013: Argument 1: type mismatch, expected list<any> but got dict<number>', 'E1211: List required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3521 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3522 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3523 def Test_simplify() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3524 CheckDefAndScriptFailure(['simplify(100)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3525 call assert_equal('NonExistingFile', simplify('NonExistingFile')) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3526 simplify('')->assert_equal('') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3527 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3528 |
23604
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3529 def Test_slice() |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3530 assert_equal('12345', slice('012345', 1)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3531 assert_equal('123', slice('012345', 1, 4)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3532 assert_equal('1234', slice('012345', 1, -1)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3533 assert_equal('1', slice('012345', 1, -4)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3534 assert_equal('', slice('012345', 1, -5)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3535 assert_equal('', slice('012345', 1, -6)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3536 |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3537 assert_equal([1, 2, 3, 4, 5], slice(range(6), 1)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3538 assert_equal([1, 2, 3], slice(range(6), 1, 4)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3539 assert_equal([1, 2, 3, 4], slice(range(6), 1, -1)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3540 assert_equal([1], slice(range(6), 1, -4)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3541 assert_equal([], slice(range(6), 1, -5)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3542 assert_equal([], slice(range(6), 1, -6)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3543 |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3544 assert_equal(0z1122334455, slice(0z001122334455, 1)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3545 assert_equal(0z112233, slice(0z001122334455, 1, 4)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3546 assert_equal(0z11223344, slice(0z001122334455, 1, -1)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3547 assert_equal(0z11, slice(0z001122334455, 1, -4)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3548 assert_equal(0z, slice(0z001122334455, 1, -5)) |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3549 assert_equal(0z, slice(0z001122334455, 1, -6)) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3550 CheckDefAndScriptFailure(['slice({"a": 10}, 1)'], ['E1013: Argument 1: type mismatch, expected list<any> but got dict<number>', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3551 CheckDefAndScriptFailure(['slice([1, 2, 3], "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3552 CheckDefAndScriptFailure(['slice("abc", 1, "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
23604
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3553 enddef |
1816ea68c022
patch 8.2.2344: using inclusive index for slice is not always desired
Bram Moolenaar <Bram@vim.org>
parents:
23602
diff
changeset
|
3554 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3555 def Test_spellsuggest() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3556 if !has('spell') |
25288
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
3557 CheckFeature spell |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3558 else |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3559 spellsuggest('marrch', 1, true)->assert_equal(['March']) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3560 endif |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3561 CheckDefAndScriptFailure(['spellsuggest(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3562 CheckDefAndScriptFailure(['spellsuggest("a", "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3563 CheckDefAndScriptFailure(['spellsuggest("a", 1, 0z01)'], ['E1013: Argument 3: type mismatch, expected bool but got blob', 'E1212: Bool required for argument 3']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3564 spellsuggest('')->assert_equal([]) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3565 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3566 |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
3567 def Test_sound_playevent() |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
3568 CheckFeature sound |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3569 CheckDefAndScriptFailure(['sound_playevent(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
3570 enddef |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
3571 |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
3572 def Test_sound_playfile() |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
3573 CheckFeature sound |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3574 CheckDefAndScriptFailure(['sound_playfile(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
3575 enddef |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
3576 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3577 def Test_sound_stop() |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3578 CheckFeature sound |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3579 CheckDefAndScriptFailure(['sound_stop("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3580 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3581 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3582 def Test_soundfold() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3583 CheckDefAndScriptFailure(['soundfold(20)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3584 assert_equal('abc', soundfold('abc')) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3585 assert_equal('', soundfold('')) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3586 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3587 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3588 def Test_sort_return_type() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3589 var res: list<number> |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3590 res = [1, 2, 3]->sort() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3591 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3592 |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3593 def Test_sort_argument() |
23104
1013a97d5dc0
patch 8.2.2098: Vim9: function argument of sort() and map() not tested
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
3594 var lines =<< trim END |
1013a97d5dc0
patch 8.2.2098: Vim9: function argument of sort() and map() not tested
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
3595 var res = ['b', 'a', 'c']->sort('i') |
1013a97d5dc0
patch 8.2.2098: Vim9: function argument of sort() and map() not tested
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
3596 res->assert_equal(['a', 'b', 'c']) |
1013a97d5dc0
patch 8.2.2098: Vim9: function argument of sort() and map() not tested
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
3597 |
1013a97d5dc0
patch 8.2.2098: Vim9: function argument of sort() and map() not tested
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
3598 def Compare(a: number, b: number): number |
1013a97d5dc0
patch 8.2.2098: Vim9: function argument of sort() and map() not tested
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
3599 return a - b |
1013a97d5dc0
patch 8.2.2098: Vim9: function argument of sort() and map() not tested
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
3600 enddef |
1013a97d5dc0
patch 8.2.2098: Vim9: function argument of sort() and map() not tested
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
3601 var l = [3, 6, 7, 1, 8, 2, 4, 5] |
1013a97d5dc0
patch 8.2.2098: Vim9: function argument of sort() and map() not tested
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
3602 sort(l, Compare) |
1013a97d5dc0
patch 8.2.2098: Vim9: function argument of sort() and map() not tested
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
3603 assert_equal([1, 2, 3, 4, 5, 6, 7, 8], l) |
1013a97d5dc0
patch 8.2.2098: Vim9: function argument of sort() and map() not tested
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
3604 END |
1013a97d5dc0
patch 8.2.2098: Vim9: function argument of sort() and map() not tested
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
3605 CheckDefAndScriptSuccess(lines) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3606 CheckDefAndScriptFailure(['sort("a")'], ['E1013: Argument 1: type mismatch, expected list<any> but got string', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3607 CheckDefAndScriptFailure(['sort([1], "", [1])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 3']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3608 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3609 |
26763
9cb27a68a01b
patch 8.2.3910: when compare function of sort() fails it does not abort
Bram Moolenaar <Bram@vim.org>
parents:
26751
diff
changeset
|
3610 def Test_sort_compare_func_fails() |
9cb27a68a01b
patch 8.2.3910: when compare function of sort() fails it does not abort
Bram Moolenaar <Bram@vim.org>
parents:
26751
diff
changeset
|
3611 var lines =<< trim END |
9cb27a68a01b
patch 8.2.3910: when compare function of sort() fails it does not abort
Bram Moolenaar <Bram@vim.org>
parents:
26751
diff
changeset
|
3612 vim9script |
9cb27a68a01b
patch 8.2.3910: when compare function of sort() fails it does not abort
Bram Moolenaar <Bram@vim.org>
parents:
26751
diff
changeset
|
3613 echo ['a', 'b', 'c']->sort((a: number, b: number) => 0) |
9cb27a68a01b
patch 8.2.3910: when compare function of sort() fails it does not abort
Bram Moolenaar <Bram@vim.org>
parents:
26751
diff
changeset
|
3614 END |
9cb27a68a01b
patch 8.2.3910: when compare function of sort() fails it does not abort
Bram Moolenaar <Bram@vim.org>
parents:
26751
diff
changeset
|
3615 writefile(lines, 'Xbadsort') |
9cb27a68a01b
patch 8.2.3910: when compare function of sort() fails it does not abort
Bram Moolenaar <Bram@vim.org>
parents:
26751
diff
changeset
|
3616 assert_fails('source Xbadsort', ['E1013:', 'E702:']) |
9cb27a68a01b
patch 8.2.3910: when compare function of sort() fails it does not abort
Bram Moolenaar <Bram@vim.org>
parents:
26751
diff
changeset
|
3617 |
9cb27a68a01b
patch 8.2.3910: when compare function of sort() fails it does not abort
Bram Moolenaar <Bram@vim.org>
parents:
26751
diff
changeset
|
3618 delete('Xbadsort') |
9cb27a68a01b
patch 8.2.3910: when compare function of sort() fails it does not abort
Bram Moolenaar <Bram@vim.org>
parents:
26751
diff
changeset
|
3619 enddef |
9cb27a68a01b
patch 8.2.3910: when compare function of sort() fails it does not abort
Bram Moolenaar <Bram@vim.org>
parents:
26751
diff
changeset
|
3620 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3621 def Test_spellbadword() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3622 CheckDefAndScriptFailure(['spellbadword(100)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3623 spellbadword('good')->assert_equal(['', '']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3624 spellbadword('')->assert_equal(['', '']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3625 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3626 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3627 def Test_split() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3628 split(' aa bb ', '\W\+', true)->assert_equal(['', 'aa', 'bb', '']) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3629 CheckDefAndScriptFailure(['split(1, "b")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3630 CheckDefAndScriptFailure(['split("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3631 CheckDefAndScriptFailure(['split("a", "b", 2)'], ['E1013: Argument 3: type mismatch, expected bool but got number', 'E1212: Bool required for argument 3']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3632 split('')->assert_equal([]) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3633 split('', '')->assert_equal([]) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3634 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3635 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3636 def Test_srand() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3637 CheckDefAndScriptFailure(['srand("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3638 type(srand(100))->assert_equal(v:t_list) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3639 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3640 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3641 def Test_state() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3642 CheckDefAndScriptFailure(['state({})'], ['E1013: Argument 1: type mismatch, expected string but got dict<unknown>', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3643 assert_equal('', state('a')) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3644 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3645 |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3646 def Test_str2float() |
23804
007fa6365dfb
patch 8.2.2443: Vim9: no compile time error for wrong str2float argument
Bram Moolenaar <Bram@vim.org>
parents:
23800
diff
changeset
|
3647 if !has('float') |
25288
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
3648 CheckFeature float |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3649 else |
23804
007fa6365dfb
patch 8.2.2443: Vim9: no compile time error for wrong str2float argument
Bram Moolenaar <Bram@vim.org>
parents:
23800
diff
changeset
|
3650 str2float("1.00")->assert_equal(1.00) |
007fa6365dfb
patch 8.2.2443: Vim9: no compile time error for wrong str2float argument
Bram Moolenaar <Bram@vim.org>
parents:
23800
diff
changeset
|
3651 str2float("2e-2")->assert_equal(0.02) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3652 str2float('')->assert_equal(0.0) |
23804
007fa6365dfb
patch 8.2.2443: Vim9: no compile time error for wrong str2float argument
Bram Moolenaar <Bram@vim.org>
parents:
23800
diff
changeset
|
3653 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3654 CheckDefAndScriptFailure(['str2float(123)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
23804
007fa6365dfb
patch 8.2.2443: Vim9: no compile time error for wrong str2float argument
Bram Moolenaar <Bram@vim.org>
parents:
23800
diff
changeset
|
3655 endif |
007fa6365dfb
patch 8.2.2443: Vim9: no compile time error for wrong str2float argument
Bram Moolenaar <Bram@vim.org>
parents:
23800
diff
changeset
|
3656 enddef |
007fa6365dfb
patch 8.2.2443: Vim9: no compile time error for wrong str2float argument
Bram Moolenaar <Bram@vim.org>
parents:
23800
diff
changeset
|
3657 |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3658 def Test_str2list() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3659 CheckDefAndScriptFailure(['str2list(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3660 CheckDefAndScriptFailure(['str2list("a", 2)'], ['E1013: Argument 2: type mismatch, expected bool but got number', 'E1212: Bool required for argument 2']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3661 assert_equal([97], str2list('a')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3662 assert_equal([97], str2list('a', 1)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3663 assert_equal([97], str2list('a', true)) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3664 str2list('')->assert_equal([]) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3665 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3666 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3667 def Test_str2nr() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3668 str2nr("1'000'000", 10, true)->assert_equal(1000000) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3669 str2nr('')->assert_equal(0) |
23786
0512923e54e1
patch 8.2.2434: Vim9: no error when compiling str2nr() with a number
Bram Moolenaar <Bram@vim.org>
parents:
23705
diff
changeset
|
3670 |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3671 CheckDefAndScriptFailure(['str2nr(123)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3672 CheckDefAndScriptFailure(['str2nr("123", "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3673 CheckDefAndScriptFailure(['str2nr("123", 10, "x")'], ['E1013: Argument 3: type mismatch, expected bool but got string', 'E1212: Bool required for argument 3']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3674 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3675 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3676 def Test_strcharlen() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3677 CheckDefAndScriptFailure(['strcharlen([1])'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1220: String or Number required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3678 "abc"->strcharlen()->assert_equal(3) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3679 strcharlen(99)->assert_equal(2) |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3680 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3681 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3682 def Test_strcharpart() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3683 CheckDefAndScriptFailure(['strcharpart(1, 2)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3684 CheckDefAndScriptFailure(['strcharpart("a", "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3685 CheckDefAndScriptFailure(['strcharpart("a", 1, "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3686 CheckDefAndScriptFailure(['strcharpart("a", 1, 1, 2)'], ['E1013: Argument 4: type mismatch, expected bool but got number', 'E1212: Bool required for argument 4']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3687 strcharpart('', 0)->assert_equal('') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3688 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3689 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3690 def Test_strchars() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3691 strchars("A\u20dd", true)->assert_equal(1) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3692 CheckDefAndScriptFailure(['strchars(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3693 CheckDefAndScriptFailure(['strchars("a", 2)'], ['E1013: Argument 2: type mismatch, expected bool but got number', 'E1212: Bool required for argument 2']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3694 assert_equal(3, strchars('abc')) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3695 assert_equal(3, strchars('abc', 1)) |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3696 assert_equal(3, strchars('abc', true)) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3697 strchars('')->assert_equal(0) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3698 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3699 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3700 def Test_strdisplaywidth() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3701 CheckDefAndScriptFailure(['strdisplaywidth(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3702 CheckDefAndScriptFailure(['strdisplaywidth("a", "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3703 strdisplaywidth('')->assert_equal(0) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3704 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3705 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3706 def Test_strftime() |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3707 if exists('*strftime') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3708 CheckDefAndScriptFailure(['strftime(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3709 CheckDefAndScriptFailure(['strftime("a", "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3710 strftime('')->assert_equal('') |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3711 endif |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3712 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3713 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3714 def Test_strgetchar() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3715 CheckDefAndScriptFailure(['strgetchar(1, 1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3716 CheckDefAndScriptFailure(['strgetchar("a", "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3717 strgetchar('', 0)->assert_equal(-1) |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3718 strgetchar('', 1)->assert_equal(-1) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3719 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3720 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3721 def Test_stridx() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3722 CheckDefAndScriptFailure(['stridx([1], "b")'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3723 CheckDefAndScriptFailure(['stridx("a", {})'], ['E1013: Argument 2: type mismatch, expected string but got dict<unknown>', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3724 CheckDefAndScriptFailure(['stridx("a", "b", "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3725 stridx('', '')->assert_equal(0) |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3726 stridx('', 'a')->assert_equal(-1) |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3727 stridx('a', '')->assert_equal(0) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3728 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3729 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3730 def Test_strlen() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3731 CheckDefAndScriptFailure(['strlen([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3732 "abc"->strlen()->assert_equal(3) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3733 strlen(99)->assert_equal(2) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3734 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3735 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3736 def Test_strpart() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3737 CheckDefAndScriptFailure(['strpart(1, 2)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3738 CheckDefAndScriptFailure(['strpart("a", "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3739 CheckDefAndScriptFailure(['strpart("a", 1, "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3740 CheckDefAndScriptFailure(['strpart("a", 1, 1, 2)'], ['E1013: Argument 4: type mismatch, expected bool but got number', 'E1212: Bool required for argument 4']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3741 strpart('', 0)->assert_equal('') |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3742 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3743 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3744 def Test_strptime() |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3745 CheckFunction strptime |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3746 if exists_compiled('*strptime') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3747 CheckDefAndScriptFailure(['strptime(10, "2021")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3748 CheckDefAndScriptFailure(['strptime("%Y", 2021)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3749 assert_true(strptime('%Y', '2021') != 0) |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3750 assert_true(strptime('%Y', '') == 0) |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3751 endif |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3752 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3753 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3754 def Test_strridx() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3755 CheckDefAndScriptFailure(['strridx([1], "b")'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3756 CheckDefAndScriptFailure(['strridx("a", {})'], ['E1013: Argument 2: type mismatch, expected string but got dict<unknown>', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3757 CheckDefAndScriptFailure(['strridx("a", "b", "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3758 strridx('', '')->assert_equal(0) |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3759 strridx('', 'a')->assert_equal(-1) |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3760 strridx('a', '')->assert_equal(1) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3761 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3762 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3763 def Test_strtrans() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3764 CheckDefAndScriptFailure(['strtrans(20)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3765 assert_equal('abc', strtrans('abc')) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3766 strtrans('')->assert_equal('') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3767 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3768 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3769 def Test_strwidth() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3770 CheckDefAndScriptFailure(['strwidth(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3771 assert_equal(4, strwidth('abcd')) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
3772 strwidth('')->assert_equal(0) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3773 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3774 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3775 def Test_submatch() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3776 var pat = 'A\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)' |
23565
34aa2907082a
patch 8.2.2325: Vim9: crash if map() changes the item type
Bram Moolenaar <Bram@vim.org>
parents:
23535
diff
changeset
|
3777 var Rep = () => range(10)->mapnew((_, v) => submatch(v, true))->string() |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3778 var actual = substitute('A123456789', pat, Rep, '') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3779 var expected = "[['A123456789'], ['1'], ['2'], ['3'], ['4'], ['5'], ['6'], ['7'], ['8'], ['9']]" |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3780 actual->assert_equal(expected) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3781 CheckDefAndScriptFailure(['submatch("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3782 CheckDefAndScriptFailure(['submatch(1, "a")'], ['E1013: Argument 2: type mismatch, expected bool but got string', 'E1212: Bool required for argument 2']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3783 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3784 |
24812
8fdf839af1f4
patch 8.2.2944: Vim9: no error when using job or channel as a string
Bram Moolenaar <Bram@vim.org>
parents:
24808
diff
changeset
|
3785 def Test_substitute() |
8fdf839af1f4
patch 8.2.2944: Vim9: no error when using job or channel as a string
Bram Moolenaar <Bram@vim.org>
parents:
24808
diff
changeset
|
3786 var res = substitute('A1234', '\d', 'X', '') |
8fdf839af1f4
patch 8.2.2944: Vim9: no error when using job or channel as a string
Bram Moolenaar <Bram@vim.org>
parents:
24808
diff
changeset
|
3787 assert_equal('AX234', res) |
8fdf839af1f4
patch 8.2.2944: Vim9: no error when using job or channel as a string
Bram Moolenaar <Bram@vim.org>
parents:
24808
diff
changeset
|
3788 |
8fdf839af1f4
patch 8.2.2944: Vim9: no error when using job or channel as a string
Bram Moolenaar <Bram@vim.org>
parents:
24808
diff
changeset
|
3789 if has('job') |
25411
df8499997fcc
patch 8.2.3242: Vim9: valgrind reports leaks in builtin function test
Bram Moolenaar <Bram@vim.org>
parents:
25390
diff
changeset
|
3790 assert_fails('"text"->substitute(".*", () => test_null_job(), "")', 'E908: using an invalid value as a String: job') |
df8499997fcc
patch 8.2.3242: Vim9: valgrind reports leaks in builtin function test
Bram Moolenaar <Bram@vim.org>
parents:
25390
diff
changeset
|
3791 assert_fails('"text"->substitute(".*", () => test_null_channel(), "")', 'E908: using an invalid value as a String: channel') |
24812
8fdf839af1f4
patch 8.2.2944: Vim9: no error when using job or channel as a string
Bram Moolenaar <Bram@vim.org>
parents:
24808
diff
changeset
|
3792 endif |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3793 CheckDefAndScriptFailure(['substitute(1, "b", "1", "d")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3794 CheckDefAndScriptFailure(['substitute("a", 2, "1", "d")'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3795 CheckDefAndScriptFailure(['substitute("a", "b", "1", 4)'], ['E1013: Argument 4: type mismatch, expected string but got number', 'E1174: String required for argument 4']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3796 substitute('', '', '', '')->assert_equal('') |
24812
8fdf839af1f4
patch 8.2.2944: Vim9: no error when using job or channel as a string
Bram Moolenaar <Bram@vim.org>
parents:
24808
diff
changeset
|
3797 enddef |
8fdf839af1f4
patch 8.2.2944: Vim9: no error when using job or channel as a string
Bram Moolenaar <Bram@vim.org>
parents:
24808
diff
changeset
|
3798 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3799 def Test_swapinfo() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3800 CheckDefAndScriptFailure(['swapinfo({})'], ['E1013: Argument 1: type mismatch, expected string but got dict<unknown>', 'E1174: String required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3801 call swapinfo('x')->assert_equal({error: 'Cannot open file'}) |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3802 call swapinfo('')->assert_equal({error: 'Cannot open file'}) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3803 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3804 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3805 def Test_swapname() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3806 CheckDefAndScriptFailure(['swapname([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3807 assert_fails('swapname("NonExistingBuf")', 'E94:') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3808 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3809 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3810 def Test_synID() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3811 new |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3812 setline(1, "text") |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3813 synID(1, 1, true)->assert_equal(0) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3814 bwipe! |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3815 CheckDefAndScriptFailure(['synID(0z10, 1, true)'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3816 CheckDefAndScriptFailure(['synID("a", true, false)'], ['E1013: Argument 2: type mismatch, expected number but got bool', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3817 CheckDefAndScriptFailure(['synID(1, 1, 2)'], ['E1013: Argument 3: type mismatch, expected bool but got number', 'E1212: Bool required for argument 3']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3818 CheckDefExecAndScriptFailure(['synID("", 10, true)'], 'E1209: Invalid value for a line number') |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3819 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3820 |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
3821 def Test_synIDattr() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3822 CheckDefAndScriptFailure(['synIDattr("a", "b")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3823 CheckDefAndScriptFailure(['synIDattr(1, 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3824 CheckDefAndScriptFailure(['synIDattr(1, "b", 3)'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3825 synIDattr(1, '', '')->assert_equal('') |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
3826 enddef |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
3827 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3828 def Test_synIDtrans() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3829 CheckDefAndScriptFailure(['synIDtrans("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3830 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3831 |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3832 def Test_synconcealed() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3833 CheckDefAndScriptFailure(['synconcealed(0z10, 1)'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3834 CheckDefAndScriptFailure(['synconcealed(1, "a")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3835 if has('conceal') |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3836 CheckDefExecAndScriptFailure(['synconcealed("", 4)'], 'E1209: Invalid value for a line number') |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3837 endif |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3838 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3839 |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3840 def Test_synstack() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3841 CheckDefAndScriptFailure(['synstack(0z10, 1)'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3842 CheckDefAndScriptFailure(['synstack(1, "a")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3843 CheckDefExecAndScriptFailure(['synstack("", 4)'], 'E1209: Invalid value for a line number') |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3844 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3845 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3846 def Test_system() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3847 CheckDefAndScriptFailure(['system(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3848 CheckDefAndScriptFailure(['system("a", {})'], ['E1013: Argument 2: type mismatch, expected string but got dict<unknown>', 'E1224: String, Number or List required for argument 2']) |
25390
a6c347a0c6e3
patch 8.2.3232: system() does not work without a second argument
Bram Moolenaar <Bram@vim.org>
parents:
25386
diff
changeset
|
3849 assert_equal("123\n", system('echo 123')) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3850 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3851 |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3852 def Test_systemlist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3853 CheckDefAndScriptFailure(['systemlist(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3854 CheckDefAndScriptFailure(['systemlist("a", {})'], ['E1013: Argument 2: type mismatch, expected string but got dict<unknown>', 'E1224: String, Number or List required for argument 2']) |
25390
a6c347a0c6e3
patch 8.2.3232: system() does not work without a second argument
Bram Moolenaar <Bram@vim.org>
parents:
25386
diff
changeset
|
3855 if has('win32') |
a6c347a0c6e3
patch 8.2.3232: system() does not work without a second argument
Bram Moolenaar <Bram@vim.org>
parents:
25386
diff
changeset
|
3856 call assert_equal(["123\r"], systemlist('echo 123')) |
a6c347a0c6e3
patch 8.2.3232: system() does not work without a second argument
Bram Moolenaar <Bram@vim.org>
parents:
25386
diff
changeset
|
3857 else |
a6c347a0c6e3
patch 8.2.3232: system() does not work without a second argument
Bram Moolenaar <Bram@vim.org>
parents:
25386
diff
changeset
|
3858 call assert_equal(['123'], systemlist('echo 123')) |
a6c347a0c6e3
patch 8.2.3232: system() does not work without a second argument
Bram Moolenaar <Bram@vim.org>
parents:
25386
diff
changeset
|
3859 endif |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3860 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3861 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3862 def Test_tabpagebuflist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3863 CheckDefAndScriptFailure(['tabpagebuflist("t")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3864 assert_equal([bufnr('')], tabpagebuflist()) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3865 assert_equal([bufnr('')], tabpagebuflist(1)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3866 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3867 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3868 def Test_tabpagenr() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3869 CheckDefAndScriptFailure(['tabpagenr(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3870 CheckDefExecAndScriptFailure(['tabpagenr("")'], 'E15: Invalid expression') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3871 assert_equal(1, tabpagenr('$')) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3872 assert_equal(1, tabpagenr()) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3873 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
3874 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3875 def Test_tabpagewinnr() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3876 CheckDefAndScriptFailure(['tabpagewinnr("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3877 CheckDefAndScriptFailure(['tabpagewinnr(1, 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3878 CheckDefExecAndScriptFailure(['tabpagewinnr(1, "")'], 'E15: Invalid expression') |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3879 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3880 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3881 def Test_taglist() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3882 CheckDefAndScriptFailure(['taglist([1])'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3883 CheckDefAndScriptFailure(['taglist("a", [2])'], ['E1013: Argument 2: type mismatch, expected string but got list<number>', 'E1174: String required for argument 2']) |
25844
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3884 taglist('')->assert_equal(0) |
29bbe650f2a1
patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Bram Moolenaar <Bram@vim.org>
parents:
25822
diff
changeset
|
3885 taglist('', '')->assert_equal(0) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3886 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3887 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3888 def Test_term_dumpload() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3889 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3890 CheckDefAndScriptFailure(['term_dumpload({"a": 10})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3891 CheckDefAndScriptFailure(['term_dumpload({"a": 10}, "b")'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3892 CheckDefAndScriptFailure(['term_dumpload("a", ["b"])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<string>', 'E1206: Dictionary required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3893 CheckDefExecAndScriptFailure(['term_dumpload("")'], 'E485: Can''t read file') |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3894 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3895 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3896 def Test_term_dumpdiff() |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3897 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3898 CheckDefAndScriptFailure(['term_dumpdiff(1, "b")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3899 CheckDefAndScriptFailure(['term_dumpdiff("a", 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3900 CheckDefAndScriptFailure(['term_dumpdiff("a", "b", [1])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 3']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
3901 CheckDefExecAndScriptFailure(['term_dumpdiff("", "")'], 'E485: Can''t read file') |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3902 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3903 |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3904 def Test_term_dumpwrite() |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3905 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3906 CheckDefAndScriptFailure(['term_dumpwrite(true, "b")'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3907 CheckDefAndScriptFailure(['term_dumpwrite(1, 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3908 CheckDefAndScriptFailure(['term_dumpwrite("a", "b", [1])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 3']) |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3909 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
3910 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3911 def Test_term_getaltscreen() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3912 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3913 CheckDefAndScriptFailure(['term_getaltscreen(true)'], ['E1013: Argument 1: type mismatch, expected string but got bool', 'E1220: String or Number required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3914 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3915 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3916 def Test_term_getansicolors() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3917 CheckRunVimInTerminal |
25240
a7f2a2079bce
patch 8.2.3156: Vim9: term_getansicolors() test fails without +termguicolors
Bram Moolenaar <Bram@vim.org>
parents:
25236
diff
changeset
|
3918 CheckFeature termguicolors |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3919 CheckDefAndScriptFailure(['term_getansicolors(["a"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1220: String or Number required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3920 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3921 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3922 def Test_term_getattr() |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3923 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3924 CheckDefAndScriptFailure(['term_getattr("x", "a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3925 CheckDefAndScriptFailure(['term_getattr(1, 2)'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3926 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
3927 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3928 def Test_term_getcursor() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3929 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3930 CheckDefAndScriptFailure(['term_getcursor({"a": 10})'], ['E1013: Argument 1: type mismatch, expected string but got dict<number>', 'E1220: String or Number required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3931 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3932 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3933 def Test_term_getjob() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3934 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3935 CheckDefAndScriptFailure(['term_getjob(0z10)'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1220: String or Number required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3936 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3937 |
25314
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
3938 def Test_term_getline() |
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
3939 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3940 CheckDefAndScriptFailure(['term_getline(1.1, 1)'], ['E1013: Argument 1: type mismatch, expected string but got float', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3941 CheckDefAndScriptFailure(['term_getline(1, 1.1)'], ['E1013: Argument 2: type mismatch, expected string but got float', 'E1220: String or Number required for argument 2']) |
25314
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
3942 enddef |
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
3943 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3944 def Test_term_getscrolled() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3945 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3946 CheckDefAndScriptFailure(['term_getscrolled(1.1)'], ['E1013: Argument 1: type mismatch, expected string but got float', 'E1220: String or Number required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3947 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3948 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3949 def Test_term_getsize() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3950 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3951 CheckDefAndScriptFailure(['term_getsize(1.1)'], ['E1013: Argument 1: type mismatch, expected string but got float', 'E1220: String or Number required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3952 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3953 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3954 def Test_term_getstatus() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3955 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3956 CheckDefAndScriptFailure(['term_getstatus(1.1)'], ['E1013: Argument 1: type mismatch, expected string but got float', 'E1220: String or Number required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3957 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3958 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3959 def Test_term_gettitle() |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3960 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3961 CheckDefAndScriptFailure(['term_gettitle(1.1)'], ['E1013: Argument 1: type mismatch, expected string but got float', 'E1220: String or Number required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3962 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
3963 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3964 def Test_term_gettty() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3965 if !has('terminal') |
25288
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
3966 CheckFeature terminal |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3967 else |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3968 var buf = Run_shell_in_terminal({}) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3969 term_gettty(buf, true)->assert_notequal('') |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3970 StopShellInTerminal(buf) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3971 endif |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3972 CheckDefAndScriptFailure(['term_gettty([1])'], ['E1013: Argument 1: type mismatch, expected string but got list<number>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3973 CheckDefAndScriptFailure(['term_gettty(1, 2)'], ['E1013: Argument 2: type mismatch, expected bool but got number', 'E1212: Bool required for argument 2']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3974 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3975 |
25314
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
3976 def Test_term_scrape() |
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
3977 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3978 CheckDefAndScriptFailure(['term_scrape(1.1, 1)'], ['E1013: Argument 1: type mismatch, expected string but got float', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3979 CheckDefAndScriptFailure(['term_scrape(1, 1.1)'], ['E1013: Argument 2: type mismatch, expected string but got float', 'E1220: String or Number required for argument 2']) |
25314
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
3980 enddef |
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
3981 |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3982 def Test_term_sendkeys() |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3983 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3984 CheckDefAndScriptFailure(['term_sendkeys([], "p")'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3985 CheckDefAndScriptFailure(['term_sendkeys(1, [])'], ['E1013: Argument 2: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 2']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3986 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3987 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3988 def Test_term_setansicolors() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3989 CheckRunVimInTerminal |
25366
53340635776e
patch 8.2.3220: Test_term_setansicolors() fails in some configurations
Bram Moolenaar <Bram@vim.org>
parents:
25356
diff
changeset
|
3990 |
53340635776e
patch 8.2.3220: Test_term_setansicolors() fails in some configurations
Bram Moolenaar <Bram@vim.org>
parents:
25356
diff
changeset
|
3991 if has('termguicolors') || has('gui') |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3992 CheckDefAndScriptFailure(['term_setansicolors([], "p")'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
3993 CheckDefAndScriptFailure(['term_setansicolors(10, {})'], ['E1013: Argument 2: type mismatch, expected list<any> but got dict<unknown>', 'E1211: List required for argument 2']) |
25366
53340635776e
patch 8.2.3220: Test_term_setansicolors() fails in some configurations
Bram Moolenaar <Bram@vim.org>
parents:
25356
diff
changeset
|
3994 else |
53340635776e
patch 8.2.3220: Test_term_setansicolors() fails in some configurations
Bram Moolenaar <Bram@vim.org>
parents:
25356
diff
changeset
|
3995 throw 'Skipped: Only works with termguicolors or gui feature' |
53340635776e
patch 8.2.3220: Test_term_setansicolors() fails in some configurations
Bram Moolenaar <Bram@vim.org>
parents:
25356
diff
changeset
|
3996 endif |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3997 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
3998 |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
3999 def Test_term_setapi() |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4000 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4001 CheckDefAndScriptFailure(['term_setapi([], "p")'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4002 CheckDefAndScriptFailure(['term_setapi(1, [])'], ['E1013: Argument 2: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 2']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4003 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4004 |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4005 def Test_term_setkill() |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4006 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4007 CheckDefAndScriptFailure(['term_setkill([], "p")'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4008 CheckDefAndScriptFailure(['term_setkill(1, [])'], ['E1013: Argument 2: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 2']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4009 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4010 |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4011 def Test_term_setrestore() |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4012 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4013 CheckDefAndScriptFailure(['term_setrestore([], "p")'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4014 CheckDefAndScriptFailure(['term_setrestore(1, [])'], ['E1013: Argument 2: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 2']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4015 enddef |
25314
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
4016 |
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
4017 def Test_term_setsize() |
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
4018 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4019 CheckDefAndScriptFailure(['term_setsize(1.1, 2, 3)'], ['E1013: Argument 1: type mismatch, expected string but got float', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4020 CheckDefAndScriptFailure(['term_setsize(1, "2", 3)'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4021 CheckDefAndScriptFailure(['term_setsize(1, 2, "3")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25314
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
4022 enddef |
7e620652bd13
patch 8.2.3194: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25302
diff
changeset
|
4023 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4024 def Test_term_start() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4025 if !has('terminal') |
25288
ddc38de331ff
patch 8.2.3181: Vim9: builtin function test fails without channel feature
Bram Moolenaar <Bram@vim.org>
parents:
25272
diff
changeset
|
4026 CheckFeature terminal |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4027 else |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4028 botright new |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4029 var winnr = winnr() |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
4030 term_start(&shell, {curwin: true}) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4031 winnr()->assert_equal(winnr) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4032 bwipe! |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4033 endif |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4034 CheckDefAndScriptFailure(['term_start({})'], ['E1013: Argument 1: type mismatch, expected string but got dict<unknown>', 'E1222: String or List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4035 CheckDefAndScriptFailure(['term_start([], [])'], ['E1013: Argument 2: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4036 CheckDefAndScriptFailure(['term_start("", "")'], ['E1013: Argument 2: type mismatch, expected dict<any> but got string', 'E1206: Dictionary required for argument 2']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
4037 CheckDefExecAndScriptFailure(['term_start("")'], 'E474: Invalid argument') |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4038 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4039 |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4040 def Test_term_wait() |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4041 CheckRunVimInTerminal |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4042 CheckDefAndScriptFailure(['term_wait(0z10, 1)'], ['E1013: Argument 1: type mismatch, expected string but got blob', 'E1220: String or Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4043 CheckDefAndScriptFailure(['term_wait(1, "a")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25272
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4044 enddef |
712e867f9721
patch 8.2.3173: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25270
diff
changeset
|
4045 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4046 def Test_test_alloc_fail() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4047 CheckDefAndScriptFailure(['test_alloc_fail("a", 10, 20)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4048 CheckDefAndScriptFailure(['test_alloc_fail(10, "b", 20)'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4049 CheckDefAndScriptFailure(['test_alloc_fail(10, 20, "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4050 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4051 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4052 def Test_test_feedinput() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4053 CheckDefAndScriptFailure(['test_feedinput(test_void())'], ['E1013: Argument 1: type mismatch, expected string but got void', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4054 CheckDefAndScriptFailure(['test_feedinput(["a"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1174: String required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4055 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4056 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4057 def Test_test_getvalue() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4058 CheckDefAndScriptFailure(['test_getvalue(1.1)'], ['E1013: Argument 1: type mismatch, expected string but got float', 'E1174: String required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4059 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4060 |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
4061 def Test_test_gui_drop_files() |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
4062 CheckGui |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4063 CheckDefAndScriptFailure(['test_gui_drop_files("a", 1, 1, 0)'], ['E1013: Argument 1: type mismatch, expected list<string> but got string', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4064 CheckDefAndScriptFailure(['test_gui_drop_files(["x"], "", 1, 0)'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4065 CheckDefAndScriptFailure(['test_gui_drop_files(["x"], 1, "", 0)'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4066 CheckDefAndScriptFailure(['test_gui_drop_files(["x"], 1, 1, "")'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
4067 enddef |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
4068 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
4069 def Test_test_gui_mouse_event() |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
4070 CheckGui |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4071 CheckDefAndScriptFailure(['test_gui_mouse_event(1.1, 1, 1, 1, 1)'], ['E1013: Argument 1: type mismatch, expected number but got float', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4072 CheckDefAndScriptFailure(['test_gui_mouse_event(1, "1", 1, 1, 1)'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4073 CheckDefAndScriptFailure(['test_gui_mouse_event(1, 1, "1", 1, 1)'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4074 CheckDefAndScriptFailure(['test_gui_mouse_event(1, 1, 1, "1", 1)'], ['E1013: Argument 4: type mismatch, expected number but got string', 'E1210: Number required for argument 4']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4075 CheckDefAndScriptFailure(['test_gui_mouse_event(1, 1, 1, 1, "1")'], ['E1013: Argument 5: type mismatch, expected number but got string', 'E1210: Number required for argument 5']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
4076 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
4077 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4078 def Test_test_ignore_error() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4079 CheckDefAndScriptFailure(['test_ignore_error([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4080 test_ignore_error('RESET') |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4081 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4082 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4083 def Test_test_option_not_set() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4084 CheckDefAndScriptFailure(['test_option_not_set([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4085 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4086 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4087 def Test_test_override() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4088 CheckDefAndScriptFailure(['test_override(1, 1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4089 CheckDefAndScriptFailure(['test_override("a", "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4090 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4091 |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
4092 def Test_test_scrollbar() |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
4093 CheckGui |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4094 CheckDefAndScriptFailure(['test_scrollbar(1, 2, 3)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4095 CheckDefAndScriptFailure(['test_scrollbar("a", "b", 3)'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4096 CheckDefAndScriptFailure(['test_scrollbar("a", 2, "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25356
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
4097 enddef |
1cde96e768e4
patch 8.2.3215: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25348
diff
changeset
|
4098 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4099 def Test_test_setmouse() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4100 CheckDefAndScriptFailure(['test_setmouse("a", 10)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4101 CheckDefAndScriptFailure(['test_setmouse(10, "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4102 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4103 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4104 def Test_test_settime() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4105 CheckDefAndScriptFailure(['test_settime([1])'], ['E1013: Argument 1: type mismatch, expected number but got list<number>', 'E1210: Number required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4106 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4107 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4108 def Test_test_srand_seed() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4109 CheckDefAndScriptFailure(['test_srand_seed([1])'], ['E1013: Argument 1: type mismatch, expected number but got list<number>', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4110 CheckDefAndScriptFailure(['test_srand_seed("10")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4111 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4112 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4113 def Test_timer_info() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4114 CheckDefAndScriptFailure(['timer_info("id")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4115 assert_equal([], timer_info(100)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4116 assert_equal([], timer_info()) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4117 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4118 |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
4119 def Test_timer_pause() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4120 CheckDefAndScriptFailure(['timer_pause("x", 1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4121 CheckDefAndScriptFailure(['timer_pause(1, "a")'], ['E1013: Argument 2: type mismatch, expected bool but got string', 'E1212: Bool required for argument 2']) |
25302
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
4122 enddef |
4d3c68196d05
patch 8.2.3188: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25292
diff
changeset
|
4123 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4124 def Test_timer_paused() |
23428
5807e3958e38
patch 8.2.2257: Vim9: using -> for lambda is ambiguous
Bram Moolenaar <Bram@vim.org>
parents:
23404
diff
changeset
|
4125 var id = timer_start(50, () => 0) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4126 timer_pause(id, true) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4127 var info = timer_info(id) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4128 info[0]['paused']->assert_equal(1) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4129 timer_stop(id) |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4130 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4131 |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
4132 def Test_timer_start() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4133 CheckDefAndScriptFailure(['timer_start("a", "1")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4134 CheckDefAndScriptFailure(['timer_start(1, "1", [1])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 3']) |
27402
898f520e798b
patch 8.2.4229: possible crash when invoking timer callback fails
Bram Moolenaar <Bram@vim.org>
parents:
27392
diff
changeset
|
4135 CheckDefExecAndScriptFailure(['timer_start(100, 0)'], 'E921:') |
898f520e798b
patch 8.2.4229: possible crash when invoking timer callback fails
Bram Moolenaar <Bram@vim.org>
parents:
27392
diff
changeset
|
4136 CheckDefExecAndScriptFailure(['timer_start(100, "")'], 'E921:') |
25348
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
4137 enddef |
75031a22be39
patch 8.2.3211: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25346
diff
changeset
|
4138 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4139 def Test_timer_stop() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4140 CheckDefAndScriptFailure(['timer_stop("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4141 assert_equal(0, timer_stop(100)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4142 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4143 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4144 def Test_tolower() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4145 CheckDefAndScriptFailure(['tolower(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
4146 tolower('')->assert_equal('') |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4147 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4148 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4149 def Test_toupper() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4150 CheckDefAndScriptFailure(['toupper(1)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
4151 toupper('')->assert_equal('') |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4152 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4153 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4154 def Test_tr() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4155 CheckDefAndScriptFailure(['tr(1, "a", "b")'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4156 CheckDefAndScriptFailure(['tr("a", 1, "b")'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4157 CheckDefAndScriptFailure(['tr("a", "a", 1)'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
4158 tr('', '', '')->assert_equal('') |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
4159 tr('ab', '', '')->assert_equal('ab') |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
4160 assert_fails("tr('ab', 'ab', '')", 'E475:') |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
4161 assert_fails("tr('ab', '', 'AB')", 'E475:') |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4162 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4163 |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4164 def Test_trim() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4165 CheckDefAndScriptFailure(['trim(["a"])'], ['E1013: Argument 1: type mismatch, expected string but got list<string>', 'E1174: String required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4166 CheckDefAndScriptFailure(['trim("a", ["b"])'], ['E1013: Argument 2: type mismatch, expected string but got list<string>', 'E1174: String required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4167 CheckDefAndScriptFailure(['trim("a", "b", "c")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3']) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
4168 trim('')->assert_equal('') |
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
4169 trim('', '')->assert_equal('') |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4170 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4171 |
25196
694f114a7673
patch 8.2.3134: crash when using typename() on a function reference
Bram Moolenaar <Bram@vim.org>
parents:
25184
diff
changeset
|
4172 def Test_typename() |
694f114a7673
patch 8.2.3134: crash when using typename() on a function reference
Bram Moolenaar <Bram@vim.org>
parents:
25184
diff
changeset
|
4173 if has('float') |
694f114a7673
patch 8.2.3134: crash when using typename() on a function reference
Bram Moolenaar <Bram@vim.org>
parents:
25184
diff
changeset
|
4174 assert_equal('func([unknown], [unknown]): float', typename(function('pow'))) |
694f114a7673
patch 8.2.3134: crash when using typename() on a function reference
Bram Moolenaar <Bram@vim.org>
parents:
25184
diff
changeset
|
4175 endif |
25692
17830c066d4b
patch 8.2.3382: crash when getting the type of a NULL partial
Bram Moolenaar <Bram@vim.org>
parents:
25654
diff
changeset
|
4176 assert_equal('func', test_null_partial()->typename()) |
17830c066d4b
patch 8.2.3382: crash when getting the type of a NULL partial
Bram Moolenaar <Bram@vim.org>
parents:
25654
diff
changeset
|
4177 assert_equal('list<unknown>', test_null_list()->typename()) |
17830c066d4b
patch 8.2.3382: crash when getting the type of a NULL partial
Bram Moolenaar <Bram@vim.org>
parents:
25654
diff
changeset
|
4178 assert_equal('dict<unknown>', test_null_dict()->typename()) |
17830c066d4b
patch 8.2.3382: crash when getting the type of a NULL partial
Bram Moolenaar <Bram@vim.org>
parents:
25654
diff
changeset
|
4179 if has('job') |
17830c066d4b
patch 8.2.3382: crash when getting the type of a NULL partial
Bram Moolenaar <Bram@vim.org>
parents:
25654
diff
changeset
|
4180 assert_equal('job', test_null_job()->typename()) |
17830c066d4b
patch 8.2.3382: crash when getting the type of a NULL partial
Bram Moolenaar <Bram@vim.org>
parents:
25654
diff
changeset
|
4181 endif |
17830c066d4b
patch 8.2.3382: crash when getting the type of a NULL partial
Bram Moolenaar <Bram@vim.org>
parents:
25654
diff
changeset
|
4182 if has('channel') |
17830c066d4b
patch 8.2.3382: crash when getting the type of a NULL partial
Bram Moolenaar <Bram@vim.org>
parents:
25654
diff
changeset
|
4183 assert_equal('channel', test_null_channel()->typename()) |
17830c066d4b
patch 8.2.3382: crash when getting the type of a NULL partial
Bram Moolenaar <Bram@vim.org>
parents:
25654
diff
changeset
|
4184 endif |
25196
694f114a7673
patch 8.2.3134: crash when using typename() on a function reference
Bram Moolenaar <Bram@vim.org>
parents:
25184
diff
changeset
|
4185 enddef |
694f114a7673
patch 8.2.3134: crash when using typename() on a function reference
Bram Moolenaar <Bram@vim.org>
parents:
25184
diff
changeset
|
4186 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4187 def Test_undofile() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4188 CheckDefAndScriptFailure(['undofile(10)'], ['E1013: Argument 1: type mismatch, expected string but got number', 'E1174: String required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4189 assert_equal('.abc.un~', fnamemodify(undofile('abc'), ':t')) |
25822
42723b535ab3
patch 8.2.3446: not enough tests for empty string arguments
Bram Moolenaar <Bram@vim.org>
parents:
25806
diff
changeset
|
4190 undofile('')->assert_equal('') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4191 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4192 |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
4193 def Test_uniq() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4194 CheckDefAndScriptFailure(['uniq("a")'], ['E1013: Argument 1: type mismatch, expected list<any> but got string', 'E1211: List required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4195 CheckDefAndScriptFailure(['uniq([1], "", [1])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<number>', 'E1206: Dictionary required for argument 3']) |
26686
c04b28fad0cc
patch 8.2.3872: Vim9: finddir() and uniq() return types can be more specific
Bram Moolenaar <Bram@vim.org>
parents:
26656
diff
changeset
|
4196 |
c04b28fad0cc
patch 8.2.3872: Vim9: finddir() and uniq() return types can be more specific
Bram Moolenaar <Bram@vim.org>
parents:
26656
diff
changeset
|
4197 CheckDefFailure(['var l: list<number> = uniq(["a", "b"])'], 'E1012: Type mismatch; expected list<number> but got list<string>') |
25338
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
4198 enddef |
e2be9f3c5907
patch 8.2.3206: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25326
diff
changeset
|
4199 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4200 def Test_values() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4201 CheckDefAndScriptFailure(['values([])'], ['E1013: Argument 1: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4202 assert_equal([], {}->values()) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4203 assert_equal(['sun'], {star: 'sun'}->values()) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4204 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4205 |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4206 def Test_virtcol() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4207 CheckDefAndScriptFailure(['virtcol(1.1)'], ['E1013: Argument 1: type mismatch, expected string but got float', 'E1222: String or List required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
4208 CheckDefExecAndScriptFailure(['virtcol("")'], 'E1209: Invalid value for a line number') |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
4209 new |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
4210 setline(1, ['abcdefgh']) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
4211 cursor(1, 4) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
4212 assert_equal(4, virtcol('.')) |
25236
2c83f7b316d3
patch 8.2.3154: Vim9: some type checks for builtin functions fail
Bram Moolenaar <Bram@vim.org>
parents:
25228
diff
changeset
|
4213 assert_equal(4, virtcol([1, 4])) |
25228
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
4214 assert_equal(9, virtcol([1, '$'])) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
4215 assert_equal(0, virtcol([10, '$'])) |
a703b3f28ef4
patch 8.2.3150: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25224
diff
changeset
|
4216 bw! |
25198
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4217 enddef |
eafc0e07b188
patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25196
diff
changeset
|
4218 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4219 def Test_visualmode() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4220 CheckDefAndScriptFailure(['visualmode("1")'], ['E1013: Argument 1: type mismatch, expected bool but got string', 'E1212: Bool required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4221 CheckDefAndScriptFailure(['visualmode(2)'], ['E1013: Argument 1: type mismatch, expected bool but got number', 'E1212: Bool required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4222 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4223 |
23596
9fa72351c18f
patch 8.2.2340: win_execute() unexpectedly returns number zero when failing
Bram Moolenaar <Bram@vim.org>
parents:
23594
diff
changeset
|
4224 def Test_win_execute() |
9fa72351c18f
patch 8.2.2340: win_execute() unexpectedly returns number zero when failing
Bram Moolenaar <Bram@vim.org>
parents:
23594
diff
changeset
|
4225 assert_equal("\n" .. winnr(), win_execute(win_getid(), 'echo winnr()')) |
25224
10a5eb15a3bf
patch 8.2.3148: Vim9: function arg type check does not handle base offset
Bram Moolenaar <Bram@vim.org>
parents:
25216
diff
changeset
|
4226 assert_equal("\n" .. winnr(), 'echo winnr()'->win_execute(win_getid())) |
10a5eb15a3bf
patch 8.2.3148: Vim9: function arg type check does not handle base offset
Bram Moolenaar <Bram@vim.org>
parents:
25216
diff
changeset
|
4227 assert_equal("\n" .. winnr(), win_execute(win_getid(), 'echo winnr()', 'silent')) |
23596
9fa72351c18f
patch 8.2.2340: win_execute() unexpectedly returns number zero when failing
Bram Moolenaar <Bram@vim.org>
parents:
23594
diff
changeset
|
4228 assert_equal('', win_execute(342343, 'echo winnr()')) |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4229 CheckDefAndScriptFailure(['win_execute("a", "b", "c")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4230 CheckDefAndScriptFailure(['win_execute(1, 2, "c")'], ['E1013: Argument 2: type mismatch, expected string but got number', 'E1222: String or List required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4231 CheckDefAndScriptFailure(['win_execute(1, "b", 3)'], ['E1013: Argument 3: type mismatch, expected string but got number', 'E1174: String required for argument 3']) |
23596
9fa72351c18f
patch 8.2.2340: win_execute() unexpectedly returns number zero when failing
Bram Moolenaar <Bram@vim.org>
parents:
23594
diff
changeset
|
4232 enddef |
9fa72351c18f
patch 8.2.2340: win_execute() unexpectedly returns number zero when failing
Bram Moolenaar <Bram@vim.org>
parents:
23594
diff
changeset
|
4233 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4234 def Test_win_findbuf() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4235 CheckDefAndScriptFailure(['win_findbuf("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4236 assert_equal([], win_findbuf(1000)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4237 assert_equal([win_getid()], win_findbuf(bufnr(''))) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4238 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4239 |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4240 def Test_win_getid() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4241 CheckDefAndScriptFailure(['win_getid(".")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4242 CheckDefAndScriptFailure(['win_getid(1, ".")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4243 assert_equal(win_getid(), win_getid(1, 1)) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4244 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4245 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4246 def Test_win_gettype() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4247 CheckDefAndScriptFailure(['win_gettype("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4248 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4249 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4250 def Test_win_gotoid() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4251 CheckDefAndScriptFailure(['win_gotoid("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4252 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4253 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4254 def Test_win_id2tabwin() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4255 CheckDefAndScriptFailure(['win_id2tabwin("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4256 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4257 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4258 def Test_win_id2win() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4259 CheckDefAndScriptFailure(['win_id2win("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4260 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4261 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4262 def Test_win_screenpos() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4263 CheckDefAndScriptFailure(['win_screenpos("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4264 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4265 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4266 def Test_win_splitmove() |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4267 split |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
22936
diff
changeset
|
4268 win_splitmove(1, 2, {vertical: true, rightbelow: true}) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4269 close |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4270 CheckDefAndScriptFailure(['win_splitmove("a", 2)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4271 CheckDefAndScriptFailure(['win_splitmove(1, "b")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4272 CheckDefAndScriptFailure(['win_splitmove(1, 2, [])'], ['E1013: Argument 3: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 3']) |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4273 enddef |
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4274 |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4275 def Test_winbufnr() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4276 CheckDefAndScriptFailure(['winbufnr("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4277 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4278 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4279 def Test_winheight() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4280 CheckDefAndScriptFailure(['winheight("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4281 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4282 |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4283 def Test_winlayout() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4284 CheckDefAndScriptFailure(['winlayout("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
25252
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4285 enddef |
acda780ffc3e
patch 8.2.3162: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
25250
diff
changeset
|
4286 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4287 def Test_winnr() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4288 CheckDefAndScriptFailure(['winnr([])'], ['E1013: Argument 1: type mismatch, expected string but got list<unknown>', 'E1174: String required for argument 1']) |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
4289 CheckDefExecAndScriptFailure(['winnr("")'], 'E15: Invalid expression') |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4290 assert_equal(1, winnr()) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4291 assert_equal(1, winnr('$')) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4292 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4293 |
23404
a6b6bcc004f2
patch 8.2.2245: Vim9: return value of winrestcmd() cannot be executed
Bram Moolenaar <Bram@vim.org>
parents:
23350
diff
changeset
|
4294 def Test_winrestcmd() |
a6b6bcc004f2
patch 8.2.2245: Vim9: return value of winrestcmd() cannot be executed
Bram Moolenaar <Bram@vim.org>
parents:
23350
diff
changeset
|
4295 split |
a6b6bcc004f2
patch 8.2.2245: Vim9: return value of winrestcmd() cannot be executed
Bram Moolenaar <Bram@vim.org>
parents:
23350
diff
changeset
|
4296 var cmd = winrestcmd() |
a6b6bcc004f2
patch 8.2.2245: Vim9: return value of winrestcmd() cannot be executed
Bram Moolenaar <Bram@vim.org>
parents:
23350
diff
changeset
|
4297 wincmd _ |
a6b6bcc004f2
patch 8.2.2245: Vim9: return value of winrestcmd() cannot be executed
Bram Moolenaar <Bram@vim.org>
parents:
23350
diff
changeset
|
4298 exe cmd |
a6b6bcc004f2
patch 8.2.2245: Vim9: return value of winrestcmd() cannot be executed
Bram Moolenaar <Bram@vim.org>
parents:
23350
diff
changeset
|
4299 assert_equal(cmd, winrestcmd()) |
a6b6bcc004f2
patch 8.2.2245: Vim9: return value of winrestcmd() cannot be executed
Bram Moolenaar <Bram@vim.org>
parents:
23350
diff
changeset
|
4300 close |
a6b6bcc004f2
patch 8.2.2245: Vim9: return value of winrestcmd() cannot be executed
Bram Moolenaar <Bram@vim.org>
parents:
23350
diff
changeset
|
4301 enddef |
a6b6bcc004f2
patch 8.2.2245: Vim9: return value of winrestcmd() cannot be executed
Bram Moolenaar <Bram@vim.org>
parents:
23350
diff
changeset
|
4302 |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4303 def Test_winrestview() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4304 CheckDefAndScriptFailure(['winrestview([])'], ['E1013: Argument 1: type mismatch, expected dict<any> but got list<unknown>', 'E1206: Dictionary required for argument 1']) |
25094
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4305 :%d _ |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4306 setline(1, 'Hello World') |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4307 winrestview({lnum: 1, col: 6}) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4308 assert_equal([1, 7], [line('.'), col('.')]) |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4309 enddef |
99494ef94fc2
patch 8.2.3084: Vim9: builtin function argument types are not checked
Bram Moolenaar <Bram@vim.org>
parents:
24998
diff
changeset
|
4310 |
23535
98185d3dd369
patch 8.2.2310: Vim9: winsaveview() return type is too generic
Bram Moolenaar <Bram@vim.org>
parents:
23485
diff
changeset
|
4311 def Test_winsaveview() |
98185d3dd369
patch 8.2.2310: Vim9: winsaveview() return type is too generic
Bram Moolenaar <Bram@vim.org>
parents:
23485
diff
changeset
|
4312 var view: dict<number> = winsaveview() |
98185d3dd369
patch 8.2.2310: Vim9: winsaveview() return type is too generic
Bram Moolenaar <Bram@vim.org>
parents:
23485
diff
changeset
|
4313 |
98185d3dd369
patch 8.2.2310: Vim9: winsaveview() return type is too generic
Bram Moolenaar <Bram@vim.org>
parents:
23485
diff
changeset
|
4314 var lines =<< trim END |
98185d3dd369
patch 8.2.2310: Vim9: winsaveview() return type is too generic
Bram Moolenaar <Bram@vim.org>
parents:
23485
diff
changeset
|
4315 var view: list<number> = winsaveview() |
98185d3dd369
patch 8.2.2310: Vim9: winsaveview() return type is too generic
Bram Moolenaar <Bram@vim.org>
parents:
23485
diff
changeset
|
4316 END |
98185d3dd369
patch 8.2.2310: Vim9: winsaveview() return type is too generic
Bram Moolenaar <Bram@vim.org>
parents:
23485
diff
changeset
|
4317 CheckDefAndScriptFailure(lines, 'E1012: Type mismatch; expected list<number> but got dict<number>', 1) |
98185d3dd369
patch 8.2.2310: Vim9: winsaveview() return type is too generic
Bram Moolenaar <Bram@vim.org>
parents:
23485
diff
changeset
|
4318 enddef |
98185d3dd369
patch 8.2.2310: Vim9: winsaveview() return type is too generic
Bram Moolenaar <Bram@vim.org>
parents:
23485
diff
changeset
|
4319 |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4320 def Test_winwidth() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4321 CheckDefAndScriptFailure(['winwidth("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4322 enddef |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4323 |
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4324 def Test_xor() |
26650
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4325 CheckDefAndScriptFailure(['xor("x", 0x2)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1']) |
a07323eb647f
patch 8.2.3854: Vim9: inconsistent arguments for test functions
Bram Moolenaar <Bram@vim.org>
parents:
26638
diff
changeset
|
4326 CheckDefAndScriptFailure(['xor(0x1, "x")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1210: Number required for argument 2']) |
24998
3b1770226f85
patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
24972
diff
changeset
|
4327 enddef |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4328 |
25759
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
4329 def Test_writefile() |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
4330 CheckDefExecAndScriptFailure(['writefile(["a"], "")'], 'E482: Can''t create file <empty>') |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
4331 enddef |
ea0820d05257
patch 8.2.3415: Vim9: not all function argument types are properly checked
Bram Moolenaar <Bram@vim.org>
parents:
25731
diff
changeset
|
4332 |
22655
eabe2c1444ea
patch 8.2.1876: Vim9: argument types are not checked at compile time
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4333 " vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker |