Mercurial > vim
annotate src/testdir/test_partial.vim @ 27609:766a329fe5bb v8.2.4331
patch 8.2.4331: Vim9: no test for existing script variable in block
Commit: https://github.com/vim/vim/commit/3a5988c025f8517ba382730dc54bb13df937edb4
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Feb 8 19:23:35 2022 +0000
patch 8.2.4331: Vim9: no test for existing script variable in block
Problem: Vim9: no test for existing script variable in block.
Solution: Add a test.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 08 Feb 2022 20:30:02 +0100 |
parents | 08940efa6b4e |
children | 86eb4aba16c3 |
rev | line source |
---|---|
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
1 " Test binding arguments to a Funcref. |
9713
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
2 |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
3 source check.vim |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
4 |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
5 func MyFunc(arg1, arg2, arg3) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
6 return a:arg1 . '/' . a:arg2 . '/' . a:arg3 |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
7 endfunc |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
8 |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
9 func MySort(up, one, two) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
10 if a:one == a:two |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
11 return 0 |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
12 endif |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
13 if a:up |
8546
996109e24f02
commit https://github.com/vim/vim/commit/790500a8e65bee295ef51a59dfa67ecbaab8ea17
Christian Brabandt <cb@256bit.org>
parents:
8538
diff
changeset
|
14 return a:one > a:two ? 1 : -1 |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
15 endif |
8546
996109e24f02
commit https://github.com/vim/vim/commit/790500a8e65bee295ef51a59dfa67ecbaab8ea17
Christian Brabandt <cb@256bit.org>
parents:
8538
diff
changeset
|
16 return a:one < a:two ? 1 : -1 |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
17 endfunc |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
18 |
9416
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
19 func MyMap(sub, index, val) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
20 return a:val - a:sub |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
21 endfunc |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
22 |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
23 func MyFilter(threshold, index, val) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
24 return a:val > a:threshold |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
25 endfunc |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
26 |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
27 func Test_partial_args() |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
28 let Cb = function('MyFunc', ["foo", "bar"]) |
8583
537bbbd4e987
commit https://github.com/vim/vim/commit/65639032bb7b17996cd255d1508a1df4ad528a1f
Christian Brabandt <cb@256bit.org>
parents:
8581
diff
changeset
|
29 |
537bbbd4e987
commit https://github.com/vim/vim/commit/65639032bb7b17996cd255d1508a1df4ad528a1f
Christian Brabandt <cb@256bit.org>
parents:
8581
diff
changeset
|
30 call Cb("zzz") |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
31 call assert_equal("foo/bar/xxx", Cb("xxx")) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
32 call assert_equal("foo/bar/yyy", call(Cb, ["yyy"])) |
8593
dc36cef103de
commit https://github.com/vim/vim/commit/8a1bb046378f4bc68d6a04af2eab80fb3ce04da6
Christian Brabandt <cb@256bit.org>
parents:
8591
diff
changeset
|
33 let Cb2 = function(Cb) |
dc36cef103de
commit https://github.com/vim/vim/commit/8a1bb046378f4bc68d6a04af2eab80fb3ce04da6
Christian Brabandt <cb@256bit.org>
parents:
8591
diff
changeset
|
34 call assert_equal("foo/bar/zzz", Cb2("zzz")) |
dc36cef103de
commit https://github.com/vim/vim/commit/8a1bb046378f4bc68d6a04af2eab80fb3ce04da6
Christian Brabandt <cb@256bit.org>
parents:
8591
diff
changeset
|
35 let Cb3 = function(Cb, ["www"]) |
dc36cef103de
commit https://github.com/vim/vim/commit/8a1bb046378f4bc68d6a04af2eab80fb3ce04da6
Christian Brabandt <cb@256bit.org>
parents:
8591
diff
changeset
|
36 call assert_equal("foo/bar/www", Cb3()) |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
37 |
8548
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
38 let Cb = function('MyFunc', []) |
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
39 call assert_equal("a/b/c", Cb("a", "b", "c")) |
8593
dc36cef103de
commit https://github.com/vim/vim/commit/8a1bb046378f4bc68d6a04af2eab80fb3ce04da6
Christian Brabandt <cb@256bit.org>
parents:
8591
diff
changeset
|
40 let Cb2 = function(Cb, []) |
dc36cef103de
commit https://github.com/vim/vim/commit/8a1bb046378f4bc68d6a04af2eab80fb3ce04da6
Christian Brabandt <cb@256bit.org>
parents:
8591
diff
changeset
|
41 call assert_equal("a/b/d", Cb2("a", "b", "d")) |
dc36cef103de
commit https://github.com/vim/vim/commit/8a1bb046378f4bc68d6a04af2eab80fb3ce04da6
Christian Brabandt <cb@256bit.org>
parents:
8591
diff
changeset
|
42 let Cb3 = function(Cb, ["a", "b"]) |
dc36cef103de
commit https://github.com/vim/vim/commit/8a1bb046378f4bc68d6a04af2eab80fb3ce04da6
Christian Brabandt <cb@256bit.org>
parents:
8591
diff
changeset
|
43 call assert_equal("a/b/e", Cb3("e")) |
8548
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
44 |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
45 let Sort = function('MySort', [1]) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
46 call assert_equal([1, 2, 3], sort([3, 1, 2], Sort)) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
47 let Sort = function('MySort', [0]) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
48 call assert_equal([3, 2, 1], sort([3, 1, 2], Sort)) |
9416
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
49 |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
50 let Map = function('MyMap', [2]) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
51 call assert_equal([-1, 0, 1], map([1, 2, 3], Map)) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
52 let Map = function('MyMap', [3]) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
53 call assert_equal([-2, -1, 0], map([1, 2, 3], Map)) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
54 |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
55 let Filter = function('MyFilter', [1]) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
56 call assert_equal([2, 3], filter([1, 2, 3], Filter)) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
57 let Filter = function('MyFilter', [2]) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
58 call assert_equal([3], filter([1, 2, 3], Filter)) |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
59 endfunc |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
60 |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
61 func MyDictFunc(arg1, arg2) dict |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
62 return self.name . '/' . a:arg1 . '/' . a:arg2 |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
63 endfunc |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
64 |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
65 func Test_partial_dict() |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
66 let dict = {'name': 'hello'} |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
67 let Cb = function('MyDictFunc', ["foo", "bar"], dict) |
20156
49694eceaa55
patch 8.2.0633: crash when using null partial in filter()
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
68 call test_garbagecollect_now() |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
69 call assert_equal("hello/foo/bar", Cb()) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
70 call assert_fails('Cb("xxx")', 'E492:') |
8548
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
71 |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
72 let Cb = function('MyDictFunc', ["foo"], dict) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
73 call assert_equal("hello/foo/xxx", Cb("xxx")) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
74 call assert_fails('Cb()', 'E492:') |
8548
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
75 |
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
76 let Cb = function('MyDictFunc', [], dict) |
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
77 call assert_equal("hello/ttt/xxx", Cb("ttt", "xxx")) |
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
78 call assert_fails('Cb("yyy")', 'E492:') |
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
79 |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
80 let Cb = function('MyDictFunc', dict) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
81 call assert_equal("hello/xxx/yyy", Cb("xxx", "yyy")) |
8548
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
82 call assert_fails('Cb("fff")', 'E492:') |
8583
537bbbd4e987
commit https://github.com/vim/vim/commit/65639032bb7b17996cd255d1508a1df4ad528a1f
Christian Brabandt <cb@256bit.org>
parents:
8581
diff
changeset
|
83 |
9416
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
84 let Cb = function('MyDictFunc', dict) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
85 call assert_equal({"foo": "hello/foo/1", "bar": "hello/bar/2"}, map({"foo": 1, "bar": 2}, Cb)) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
86 |
8583
537bbbd4e987
commit https://github.com/vim/vim/commit/65639032bb7b17996cd255d1508a1df4ad528a1f
Christian Brabandt <cb@256bit.org>
parents:
8581
diff
changeset
|
87 let dict = {"tr": function('tr', ['hello', 'h', 'H'])} |
537bbbd4e987
commit https://github.com/vim/vim/commit/65639032bb7b17996cd255d1508a1df4ad528a1f
Christian Brabandt <cb@256bit.org>
parents:
8581
diff
changeset
|
88 call assert_equal("Hello", dict.tr()) |
19783
546bdeef35f1
patch 8.2.0448: various functions not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19249
diff
changeset
|
89 |
546bdeef35f1
patch 8.2.0448: various functions not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19249
diff
changeset
|
90 call assert_fails("let F=function('setloclist', 10)", "E923:") |
546bdeef35f1
patch 8.2.0448: various functions not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19249
diff
changeset
|
91 call assert_fails("let F=function('setloclist', [], [])", "E922:") |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
92 endfunc |
8575
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
93 |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
94 func Test_partial_implicit() |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
95 let dict = {'name': 'foo'} |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
96 func dict.MyFunc(arg) dict |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
97 return self.name . '/' . a:arg |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
98 endfunc |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
99 |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
100 call assert_equal('foo/bar', dict.MyFunc('bar')) |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
101 |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
102 call assert_fails('let func = dict.MyFunc', 'E704:') |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
103 let Func = dict.MyFunc |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
104 call assert_equal('foo/aaa', Func('aaa')) |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
105 |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
106 let Func = function(dict.MyFunc, ['bbb']) |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
107 call assert_equal('foo/bbb', Func()) |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
108 endfunc |
8581
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
109 |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
110 fun InnerCall(funcref) |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
111 return a:funcref |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
112 endfu |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
113 |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
114 fun OuterCall() |
19249
2a017e9dc6da
patch 8.2.0183: tests fail when the float feature is disabled
Bram Moolenaar <Bram@vim.org>
parents:
17534
diff
changeset
|
115 let opt = { 'func' : function('max') } |
8581
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
116 call InnerCall(opt.func) |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
117 endfu |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
118 |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
119 func Test_function_in_dict() |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
120 call OuterCall() |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
121 endfunc |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
122 |
15406
63b02fcf1361
patch 8.1.0711: test files still use function!
Bram Moolenaar <Bram@vim.org>
parents:
9846
diff
changeset
|
123 func s:cache_clear() dict |
8585
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
124 return self.name |
15406
63b02fcf1361
patch 8.1.0711: test files still use function!
Bram Moolenaar <Bram@vim.org>
parents:
9846
diff
changeset
|
125 endfunc |
8585
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
126 |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
127 func Test_script_function_in_dict() |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
128 let s:obj = {'name': 'foo'} |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
129 let s:obj2 = {'name': 'bar'} |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
130 |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
131 let s:obj['clear'] = function('s:cache_clear') |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
132 |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
133 call assert_equal('foo', s:obj.clear()) |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
134 let F = s:obj.clear |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
135 call assert_equal('foo', F()) |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
136 call assert_equal('foo', call(s:obj.clear, [], s:obj)) |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
137 call assert_equal('bar', call(s:obj.clear, [], s:obj2)) |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
138 |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
139 let s:obj2['clear'] = function('s:cache_clear') |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
140 call assert_equal('bar', s:obj2.clear()) |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
141 let B = s:obj2.clear |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
142 call assert_equal('bar', B()) |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
143 endfunc |
8591
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
144 |
15406
63b02fcf1361
patch 8.1.0711: test files still use function!
Bram Moolenaar <Bram@vim.org>
parents:
9846
diff
changeset
|
145 func s:cache_arg(arg) dict |
8599
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
146 let s:result = self.name . '/' . a:arg |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
147 return s:result |
15406
63b02fcf1361
patch 8.1.0711: test files still use function!
Bram Moolenaar <Bram@vim.org>
parents:
9846
diff
changeset
|
148 endfunc |
8599
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
149 |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
150 func Test_script_function_in_dict_arg() |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
151 let s:obj = {'name': 'foo'} |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
152 let s:obj['clear'] = function('s:cache_arg') |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
153 |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
154 call assert_equal('foo/bar', s:obj.clear('bar')) |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
155 let F = s:obj.clear |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
156 let s:result = '' |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
157 call assert_equal('foo/bar', F('bar')) |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
158 call assert_equal('foo/bar', s:result) |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
159 |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
160 let s:obj['clear'] = function('s:cache_arg', ['bar']) |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
161 call assert_equal('foo/bar', s:obj.clear()) |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
162 let s:result = '' |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
163 call s:obj.clear() |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
164 call assert_equal('foo/bar', s:result) |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
165 |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
166 let F = s:obj.clear |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
167 call assert_equal('foo/bar', F()) |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
168 let s:result = '' |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
169 call F() |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
170 call assert_equal('foo/bar', s:result) |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
171 |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
172 call assert_equal('foo/bar', call(s:obj.clear, [], s:obj)) |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
173 endfunc |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
174 |
8591
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
175 func Test_partial_exists() |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
176 let F = function('MyFunc') |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
177 call assert_true(exists('*F')) |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
178 let lF = [F] |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
179 call assert_true(exists('*lF[0]')) |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
180 |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
181 let F = function('MyFunc', ['arg']) |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
182 call assert_true(exists('*F')) |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
183 let lF = [F] |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
184 call assert_true(exists('*lF[0]')) |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
185 endfunc |
8637
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
186 |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
187 func Test_partial_string() |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
188 let F = function('MyFunc') |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
189 call assert_equal("function('MyFunc')", string(F)) |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
190 let F = function('MyFunc', ['foo']) |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
191 call assert_equal("function('MyFunc', ['foo'])", string(F)) |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
192 let F = function('MyFunc', ['foo', 'bar']) |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
193 call assert_equal("function('MyFunc', ['foo', 'bar'])", string(F)) |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
194 let d = {'one': 1} |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
195 let F = function('MyFunc', d) |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
196 call assert_equal("function('MyFunc', {'one': 1})", string(F)) |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
197 let F = function('MyFunc', ['foo'], d) |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
198 call assert_equal("function('MyFunc', ['foo'], {'one': 1})", string(F)) |
20158
94f05de75e9f
patch 8.2.0634: crash with null partial and blob
Bram Moolenaar <Bram@vim.org>
parents:
20156
diff
changeset
|
199 call assert_equal("function('')", string(test_null_function())) |
94f05de75e9f
patch 8.2.0634: crash with null partial and blob
Bram Moolenaar <Bram@vim.org>
parents:
20156
diff
changeset
|
200 call assert_equal("function('')", string(test_null_partial())) |
8637
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
201 endfunc |
8698
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
202 |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
203 func Test_func_unref() |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
204 let obj = {} |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
205 function! obj.func() abort |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
206 endfunction |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
207 let funcnumber = matchstr(string(obj.func), '^function(''\zs.\{-}\ze''') |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
208 call assert_true(exists('*{' . funcnumber . '}')) |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
209 unlet obj |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
210 call assert_false(exists('*{' . funcnumber . '}')) |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
211 endfunc |
8710
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
212 |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
213 func Test_tostring() |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
214 let d = {} |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
215 let d.d = d |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
216 function d.test3() |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
217 echo 42 |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
218 endfunction |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
219 try |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
220 call string(d.test3) |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
221 catch |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
222 call assert_true(v:false, v:exception) |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
223 endtry |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
224 endfunc |
8712
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
225 |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
226 func Test_redefine_dict_func() |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
227 let d = {} |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
228 function d.test4() |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
229 endfunction |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
230 let d.test4 = d.test4 |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
231 try |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
232 function! d.test4(name) |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
233 endfunction |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
234 catch |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
235 call assert_true(v:errmsg, v:exception) |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
236 endtry |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
237 endfunc |
8714
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
238 |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
239 func Test_bind_in_python() |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
240 CheckFeature python |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
241 let g:d = {} |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
242 function g:d.test2() |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
243 endfunction |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
244 python import vim |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
245 try |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
246 call assert_equal(pyeval('vim.bindeval("g:d.test2")'), g:d.test2) |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
247 catch |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
248 call assert_true(v:false, v:exception) |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
249 endtry |
8714
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
250 endfunc |
8855
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
251 |
8863
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
252 " This caused double free on exit if EXITFREE is defined. |
8855
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
253 func Test_cyclic_list_arg() |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
254 let l = [] |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
255 let Pt = function('string', [l]) |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
256 call add(l, Pt) |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
257 unlet l |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
258 unlet Pt |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
259 endfunc |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
260 |
8863
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
261 " This caused double free on exit if EXITFREE is defined. |
8855
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
262 func Test_cyclic_dict_arg() |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
263 let d = {} |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
264 let Pt = function('string', [d]) |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
265 let d.Pt = Pt |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
266 unlet d |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
267 unlet Pt |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
268 endfunc |
8863
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
269 |
9846
95ad2692dec0
commit https://github.com/vim/vim/commit/0e5d3a2940ead6c8ee3bacacea4153b647b67cca
Christian Brabandt <cb@256bit.org>
parents:
9764
diff
changeset
|
270 func Ignored3(job1, job2, status) |
8863
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
271 endfunc |
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
272 |
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
273 func Test_cycle_partial_job() |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
274 CheckFeature job |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
275 let job = job_start('echo') |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
276 call job_setoptions(job, {'exit_cb': function('Ignored3', [job])}) |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
277 unlet job |
8863
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
278 endfunc |
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
279 |
9846
95ad2692dec0
commit https://github.com/vim/vim/commit/0e5d3a2940ead6c8ee3bacacea4153b647b67cca
Christian Brabandt <cb@256bit.org>
parents:
9764
diff
changeset
|
280 func Ignored2(job, status) |
95ad2692dec0
commit https://github.com/vim/vim/commit/0e5d3a2940ead6c8ee3bacacea4153b647b67cca
Christian Brabandt <cb@256bit.org>
parents:
9764
diff
changeset
|
281 endfunc |
95ad2692dec0
commit https://github.com/vim/vim/commit/0e5d3a2940ead6c8ee3bacacea4153b647b67cca
Christian Brabandt <cb@256bit.org>
parents:
9764
diff
changeset
|
282 |
8863
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
283 func Test_ref_job_partial_dict() |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
284 CheckFeature job |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
285 let g:ref_job = job_start('echo') |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
286 let d = {'a': 'b'} |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
287 call job_setoptions(g:ref_job, {'exit_cb': function('Ignored2', [], d)}) |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
20158
diff
changeset
|
288 call test_garbagecollect_now() |
8863
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
289 endfunc |
9104
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
290 |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
291 func Test_auto_partial_rebind() |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
292 let dict1 = {'name': 'dict1'} |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
293 func! dict1.f1() |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
294 return self.name |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
295 endfunc |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
296 let dict1.f2 = function(dict1.f1, dict1) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
297 |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
298 call assert_equal('dict1', dict1.f1()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
299 call assert_equal('dict1', dict1['f1']()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
300 call assert_equal('dict1', dict1.f2()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
301 call assert_equal('dict1', dict1['f2']()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
302 |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
303 let dict2 = {'name': 'dict2'} |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
304 let dict2.f1 = dict1.f1 |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
305 let dict2.f2 = dict1.f2 |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
306 |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
307 call assert_equal('dict2', dict2.f1()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
308 call assert_equal('dict2', dict2['f1']()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
309 call assert_equal('dict1', dict2.f2()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
310 call assert_equal('dict1', dict2['f2']()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
311 endfunc |
9110
6d3888e2232c
commit https://github.com/vim/vim/commit/2bbf8eff6fab16d86e7bcfc0da1962d31bec7891
Christian Brabandt <cb@256bit.org>
parents:
9104
diff
changeset
|
312 |
6d3888e2232c
commit https://github.com/vim/vim/commit/2bbf8eff6fab16d86e7bcfc0da1962d31bec7891
Christian Brabandt <cb@256bit.org>
parents:
9104
diff
changeset
|
313 func Test_get_partial_items() |
6d3888e2232c
commit https://github.com/vim/vim/commit/2bbf8eff6fab16d86e7bcfc0da1962d31bec7891
Christian Brabandt <cb@256bit.org>
parents:
9104
diff
changeset
|
314 let dict = {'name': 'hello'} |
9117
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
315 let args = ["foo", "bar"] |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
316 let Func = function('MyDictFunc') |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
317 let Cb = function('MyDictFunc', args, dict) |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
318 |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
319 call assert_equal(Func, get(Cb, 'func')) |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
320 call assert_equal('MyDictFunc', get(Cb, 'name')) |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
321 call assert_equal(args, get(Cb, 'args')) |
9110
6d3888e2232c
commit https://github.com/vim/vim/commit/2bbf8eff6fab16d86e7bcfc0da1962d31bec7891
Christian Brabandt <cb@256bit.org>
parents:
9104
diff
changeset
|
322 call assert_equal(dict, get(Cb, 'dict')) |
6d3888e2232c
commit https://github.com/vim/vim/commit/2bbf8eff6fab16d86e7bcfc0da1962d31bec7891
Christian Brabandt <cb@256bit.org>
parents:
9104
diff
changeset
|
323 call assert_fails('call get(Cb, "xxx")', 'E475:') |
9117
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
324 |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
325 call assert_equal(Func, get(Func, 'func')) |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
326 call assert_equal('MyDictFunc', get(Func, 'name')) |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
327 call assert_equal([], get(Func, 'args')) |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
328 call assert_true(empty( get(Func, 'dict'))) |
17534
2b4c138bf8e9
patch 8.1.1765: get(func, dict, def) does not work properly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
329 |
2b4c138bf8e9
patch 8.1.1765: get(func, dict, def) does not work properly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
330 let P = function('substitute', ['hello there', 'there']) |
2b4c138bf8e9
patch 8.1.1765: get(func, dict, def) does not work properly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
331 let dict = {'partial has': 'no dict'} |
2b4c138bf8e9
patch 8.1.1765: get(func, dict, def) does not work properly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
332 call assert_equal(dict, get(P, 'dict', dict)) |
2b4c138bf8e9
patch 8.1.1765: get(func, dict, def) does not work properly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
333 call assert_equal(0, get(l:P, 'dict')) |
9110
6d3888e2232c
commit https://github.com/vim/vim/commit/2bbf8eff6fab16d86e7bcfc0da1962d31bec7891
Christian Brabandt <cb@256bit.org>
parents:
9104
diff
changeset
|
334 endfunc |
9183
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
335 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
336 func Test_compare_partials() |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
337 let d1 = {} |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
338 let d2 = {} |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
339 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
340 function d1.f1() dict |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
341 endfunction |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
342 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
343 function d1.f2() dict |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
344 endfunction |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
345 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
346 let F1 = get(d1, 'f1') |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
347 let F2 = get(d1, 'f2') |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
348 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
349 let F1d1 = function(F1, d1) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
350 let F2d1 = function(F2, d2) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
351 let F1d1a1 = function(F1d1, [1]) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
352 let F1d1a12 = function(F1d1, [1, 2]) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
353 let F1a1 = function(F1, [1]) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
354 let F1a2 = function(F1, [2]) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
355 let F1d2 = function(F1, d2) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
356 let d3 = {'f1': F1, 'f2': F2} |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
357 let F1d3 = function(F1, d3) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
358 let F1ad1 = function(F1, [d1]) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
359 let F1ad3 = function(F1, [d3]) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
360 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
361 call assert_match('^function(''\d\+'')$', string(F1)) " Not a partial |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
362 call assert_match('^function(''\d\+'')$', string(F2)) " Not a partial |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
363 call assert_match('^function(''\d\+'', {.*})$', string(F1d1)) " A partial |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
364 call assert_match('^function(''\d\+'', {.*})$', string(F2d1)) " A partial |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
365 call assert_match('^function(''\d\+'', \[.*\])$', string(F1a1)) " No dict |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
366 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
367 " != |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
368 let X = F1 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
369 call assert_false(F1 != X) " same function |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
370 let X = F1d1 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
371 call assert_false(F1d1 != X) " same partial |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
372 let X = F1d1a1 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
373 call assert_false(F1d1a1 != X) " same partial |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
374 let X = F1a1 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
375 call assert_false(F1a1 != X) " same partial |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
376 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
377 call assert_true(F1 != F2) " Different functions |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
378 call assert_true(F1 != F1d1) " Partial /= non-partial |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
379 call assert_true(F1d1a1 != F1d1a12) " Different number of arguments |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
380 call assert_true(F1a1 != F1d1a12) " One has no dict |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
381 call assert_true(F1a1 != F1a2) " Different arguments |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
382 call assert_true(F1d2 != F1d1) " Different dictionaries |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
383 call assert_false(F1d1 != F1d3) " Equal dictionaries, even though d1 isnot d3 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
384 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
385 " isnot, option 1 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
386 call assert_true(F1 isnot# F2) " Different functions |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
387 call assert_true(F1 isnot# F1d1) " Partial /= non-partial |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
388 call assert_true(F1d1 isnot# F1d3) " d1 isnot d3, even though d1 == d3 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
389 call assert_true(F1a1 isnot# F1d1a12) " One has no dict |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
390 call assert_true(F1a1 isnot# F1a2) " Different number of arguments |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
391 call assert_true(F1ad1 isnot# F1ad3) " In arguments d1 isnot d3 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
392 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
393 " isnot, option 2 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
394 call assert_true(F1 isnot# F2) " Different functions |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
395 call assert_true(F1 isnot# F1d1) " Partial /= non-partial |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
396 call assert_true(d1.f1 isnot# d1.f1) " handle_subscript creates new partial each time |
20156
49694eceaa55
patch 8.2.0633: crash when using null partial in filter()
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
397 |
49694eceaa55
patch 8.2.0633: crash when using null partial in filter()
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
398 " compare two null partials |
49694eceaa55
patch 8.2.0633: crash when using null partial in filter()
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
399 let N1 = test_null_partial() |
49694eceaa55
patch 8.2.0633: crash when using null partial in filter()
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
400 let N2 = N1 |
49694eceaa55
patch 8.2.0633: crash when using null partial in filter()
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
401 call assert_true(N1 is N2) |
49694eceaa55
patch 8.2.0633: crash when using null partial in filter()
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
402 call assert_true(N1 == N2) |
49694eceaa55
patch 8.2.0633: crash when using null partial in filter()
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
403 |
49694eceaa55
patch 8.2.0633: crash when using null partial in filter()
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
404 " compare a partial and a null partial |
49694eceaa55
patch 8.2.0633: crash when using null partial in filter()
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
405 call assert_false(N1 == F1) |
49694eceaa55
patch 8.2.0633: crash when using null partial in filter()
Bram Moolenaar <Bram@vim.org>
parents:
19783
diff
changeset
|
406 call assert_false(F1 is N1) |
9183
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
407 endfunc |
19783
546bdeef35f1
patch 8.2.0448: various functions not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19249
diff
changeset
|
408 |
546bdeef35f1
patch 8.2.0448: various functions not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19249
diff
changeset
|
409 " vim: shiftwidth=2 sts=2 expandtab |