Mercurial > vim
annotate src/testdir/test_partial.vim @ 9738:6818e3c96473 v7.4.2144
commit https://github.com/vim/vim/commit/796aa9c804f09276bd3cc45123f4a191a001dec2
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Aug 2 21:41:28 2016 +0200
patch 7.4.2144
Problem: On MS-Windows quickix does not handle a line with 1023 bytes
ending in CR-LF properly.
Solution: Don't consider CR a line break. (Ken Takata)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 02 Aug 2016 21:45:05 +0200 |
parents | 058e5ea0400e |
children | e0b783389bea |
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 |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
3 " NOTE: This function may cause memory leaks to be reported. |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
4 " That is because when fork/exec fails memory is not freed. Since the process |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
5 " exists right away it's not a real leak. |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
6 func Test_job_start_fails() |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
7 if has('job') |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
8 let job = job_start('axdfxsdf') |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
9 for i in range(100) |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
10 let status = job_status(job) |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
11 if status == 'dead' || status == 'fail' |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
12 break |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
13 endif |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
14 sleep 10m |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
15 endfor |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
16 if has('unix') |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
17 call assert_equal('dead', job_status(job)) |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
18 else |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
19 call assert_equal('fail', job_status(job)) |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
20 endif |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
21 unlet job |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
22 endif |
058e5ea0400e
commit https://github.com/vim/vim/commit/31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c
Christian Brabandt <cb@256bit.org>
parents:
9416
diff
changeset
|
23 endfunc |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
24 |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
25 func MyFunc(arg1, arg2, arg3) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
26 return a:arg1 . '/' . a:arg2 . '/' . a:arg3 |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
27 endfunc |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
28 |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
29 func MySort(up, one, two) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
30 if a:one == a:two |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
31 return 0 |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
32 endif |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
33 if a:up |
8546
996109e24f02
commit https://github.com/vim/vim/commit/790500a8e65bee295ef51a59dfa67ecbaab8ea17
Christian Brabandt <cb@256bit.org>
parents:
8538
diff
changeset
|
34 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
|
35 endif |
8546
996109e24f02
commit https://github.com/vim/vim/commit/790500a8e65bee295ef51a59dfa67ecbaab8ea17
Christian Brabandt <cb@256bit.org>
parents:
8538
diff
changeset
|
36 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
|
37 endfunc |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
38 |
9416
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
39 func MyMap(sub, index, val) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
40 return a:val - a:sub |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
41 endfunc |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
42 |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
43 func MyFilter(threshold, index, val) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
44 return a:val > a:threshold |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
45 endfunc |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
46 |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
47 func Test_partial_args() |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
48 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
|
49 |
537bbbd4e987
commit https://github.com/vim/vim/commit/65639032bb7b17996cd255d1508a1df4ad528a1f
Christian Brabandt <cb@256bit.org>
parents:
8581
diff
changeset
|
50 call Cb("zzz") |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
51 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
|
52 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
|
53 let Cb2 = function(Cb) |
dc36cef103de
commit https://github.com/vim/vim/commit/8a1bb046378f4bc68d6a04af2eab80fb3ce04da6
Christian Brabandt <cb@256bit.org>
parents:
8591
diff
changeset
|
54 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
|
55 let Cb3 = function(Cb, ["www"]) |
dc36cef103de
commit https://github.com/vim/vim/commit/8a1bb046378f4bc68d6a04af2eab80fb3ce04da6
Christian Brabandt <cb@256bit.org>
parents:
8591
diff
changeset
|
56 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
|
57 |
8548
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
58 let Cb = function('MyFunc', []) |
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
59 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
|
60 let Cb2 = function(Cb, []) |
dc36cef103de
commit https://github.com/vim/vim/commit/8a1bb046378f4bc68d6a04af2eab80fb3ce04da6
Christian Brabandt <cb@256bit.org>
parents:
8591
diff
changeset
|
61 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
|
62 let Cb3 = function(Cb, ["a", "b"]) |
dc36cef103de
commit https://github.com/vim/vim/commit/8a1bb046378f4bc68d6a04af2eab80fb3ce04da6
Christian Brabandt <cb@256bit.org>
parents:
8591
diff
changeset
|
63 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
|
64 |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
65 let Sort = function('MySort', [1]) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
66 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
|
67 let Sort = function('MySort', [0]) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
68 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
|
69 |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
70 let Map = function('MyMap', [2]) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
71 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
|
72 let Map = function('MyMap', [3]) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
73 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
|
74 |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
75 let Filter = function('MyFilter', [1]) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
76 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
|
77 let Filter = function('MyFilter', [2]) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
78 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
|
79 endfunc |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
80 |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
81 func MyDictFunc(arg1, arg2) dict |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
82 return self.name . '/' . a:arg1 . '/' . a:arg2 |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
83 endfunc |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
84 |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
85 func Test_partial_dict() |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
86 let dict = {'name': 'hello'} |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
87 let Cb = function('MyDictFunc', ["foo", "bar"], dict) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
88 call assert_equal("hello/foo/bar", Cb()) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
89 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
|
90 |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
91 let Cb = function('MyDictFunc', ["foo"], dict) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
92 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
|
93 call assert_fails('Cb()', 'E492:') |
8548
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
94 |
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
95 let Cb = function('MyDictFunc', [], dict) |
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
96 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
|
97 call assert_fails('Cb("yyy")', 'E492:') |
24db3583c496
commit https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
Christian Brabandt <cb@256bit.org>
parents:
8546
diff
changeset
|
98 |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
99 let Cb = function('MyDictFunc', dict) |
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
100 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
|
101 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
|
102 |
9416
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
103 let Cb = function('MyDictFunc', dict) |
cbf052ccb120
commit https://github.com/vim/vim/commit/b33c7eb5b813cb631b2b0ca5c4029e1788a09bde
Christian Brabandt <cb@256bit.org>
parents:
9183
diff
changeset
|
104 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
|
105 |
8583
537bbbd4e987
commit https://github.com/vim/vim/commit/65639032bb7b17996cd255d1508a1df4ad528a1f
Christian Brabandt <cb@256bit.org>
parents:
8581
diff
changeset
|
106 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
|
107 call assert_equal("Hello", dict.tr()) |
8538
c337c813c64d
commit https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
108 endfunc |
8575
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
109 |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
110 func Test_partial_implicit() |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
111 let dict = {'name': 'foo'} |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
112 func dict.MyFunc(arg) dict |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
113 return self.name . '/' . a:arg |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
114 endfunc |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
115 |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
116 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
|
117 |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
118 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
|
119 let Func = dict.MyFunc |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
120 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
|
121 |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
122 let Func = function(dict.MyFunc, ['bbb']) |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
123 call assert_equal('foo/bbb', Func()) |
b5209a4e5baf
commit https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
Christian Brabandt <cb@256bit.org>
parents:
8548
diff
changeset
|
124 endfunc |
8581
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
125 |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
126 fun InnerCall(funcref) |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
127 return a:funcref |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
128 endfu |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
129 |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
130 fun OuterCall() |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
131 let opt = { 'func' : function('sin') } |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
132 call InnerCall(opt.func) |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
133 endfu |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
134 |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
135 func Test_function_in_dict() |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
136 call OuterCall() |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
137 endfunc |
fd454847836d
commit https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
Christian Brabandt <cb@256bit.org>
parents:
8575
diff
changeset
|
138 |
8585
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
139 function! s:cache_clear() dict |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
140 return self.name |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
141 endfunction |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
142 |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
143 func Test_script_function_in_dict() |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
144 let s:obj = {'name': 'foo'} |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
145 let s:obj2 = {'name': 'bar'} |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
146 |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
147 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
|
148 |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
149 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
|
150 let F = s:obj.clear |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
151 call assert_equal('foo', F()) |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
152 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
|
153 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
|
154 |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
155 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
|
156 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
|
157 let B = s:obj2.clear |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
158 call assert_equal('bar', B()) |
ce37bbedcb65
commit https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
Christian Brabandt <cb@256bit.org>
parents:
8583
diff
changeset
|
159 endfunc |
8591
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
160 |
8599
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
161 function! s:cache_arg(arg) dict |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
162 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
|
163 return s:result |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
164 endfunction |
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 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
|
167 let s:obj = {'name': 'foo'} |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
168 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
|
169 |
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:obj.clear('bar')) |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
171 let F = s:obj.clear |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
172 let s:result = '' |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
173 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
|
174 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
|
175 |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
176 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
|
177 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
|
178 let s:result = '' |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
179 call s:obj.clear() |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
180 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
|
181 |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
182 let F = s:obj.clear |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
183 call assert_equal('foo/bar', F()) |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
184 let s:result = '' |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
185 call F() |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
186 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
|
187 |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
188 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
|
189 endfunc |
ddb04cbe1e0c
commit https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
Christian Brabandt <cb@256bit.org>
parents:
8593
diff
changeset
|
190 |
8591
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
191 func Test_partial_exists() |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
192 let F = function('MyFunc') |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
193 call assert_true(exists('*F')) |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
194 let lF = [F] |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
195 call assert_true(exists('*lF[0]')) |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
196 |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
197 let F = function('MyFunc', ['arg']) |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
198 call assert_true(exists('*F')) |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
199 let lF = [F] |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
200 call assert_true(exists('*lF[0]')) |
5bc958a92849
commit https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
Christian Brabandt <cb@256bit.org>
parents:
8585
diff
changeset
|
201 endfunc |
8637
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
202 |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
203 func Test_partial_string() |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
204 let F = function('MyFunc') |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
205 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
|
206 let F = function('MyFunc', ['foo']) |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
207 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
|
208 let F = function('MyFunc', ['foo', 'bar']) |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
209 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
|
210 let d = {'one': 1} |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
211 let F = function('MyFunc', d) |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
212 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
|
213 let F = function('MyFunc', ['foo'], d) |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
214 call assert_equal("function('MyFunc', ['foo'], {'one': 1})", string(F)) |
ff41ece2e4b8
commit https://github.com/vim/vim/commit/5c29154b521e9948190be653cfda666ecbb63b5b
Christian Brabandt <cb@256bit.org>
parents:
8599
diff
changeset
|
215 endfunc |
8698
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
216 |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
217 func Test_func_unref() |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
218 let obj = {} |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
219 function! obj.func() abort |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
220 endfunction |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
221 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
|
222 call assert_true(exists('*{' . funcnumber . '}')) |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
223 unlet obj |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
224 call assert_false(exists('*{' . funcnumber . '}')) |
13b0ed12a78a
commit https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
Christian Brabandt <cb@256bit.org>
parents:
8637
diff
changeset
|
225 endfunc |
8710
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
226 |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
227 func Test_tostring() |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
228 let d = {} |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
229 let d.d = d |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
230 function d.test3() |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
231 echo 42 |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
232 endfunction |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
233 try |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
234 call string(d.test3) |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
235 catch |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
236 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
|
237 endtry |
af3cb5c068fd
commit https://github.com/vim/vim/commit/24c77a1e3a2ad510582116229462b482d69b4b8e
Christian Brabandt <cb@256bit.org>
parents:
8698
diff
changeset
|
238 endfunc |
8712
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
239 |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
240 func Test_redefine_dict_func() |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
241 let d = {} |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
242 function d.test4() |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
243 endfunction |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
244 let d.test4 = d.test4 |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
245 try |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
246 function! d.test4(name) |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
247 endfunction |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
248 catch |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
249 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
|
250 endtry |
65130a9d3386
commit https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
Christian Brabandt <cb@256bit.org>
parents:
8710
diff
changeset
|
251 endfunc |
8714
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
252 |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
253 func Test_bind_in_python() |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
254 if has('python') |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
255 let g:d = {} |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
256 function g:d.test2() |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
257 endfunction |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
258 python import vim |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
259 try |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
260 call assert_equal(pyeval('vim.bindeval("g:d.test2")'), g:d.test2) |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
261 catch |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
262 call assert_true(v:false, v:exception) |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
263 endtry |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
264 endif |
a5224eeb3546
commit https://github.com/vim/vim/commit/4c90861e9f864eab94f043c432acff508396ed62
Christian Brabandt <cb@256bit.org>
parents:
8712
diff
changeset
|
265 endfunc |
8855
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
266 |
8863
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
267 " 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
|
268 func Test_cyclic_list_arg() |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
269 let l = [] |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
270 let Pt = function('string', [l]) |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
271 call add(l, Pt) |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
272 unlet l |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
273 unlet Pt |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
274 endfunc |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
275 |
8863
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
276 " 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
|
277 func Test_cyclic_dict_arg() |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
278 let d = {} |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
279 let Pt = function('string', [d]) |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
280 let d.Pt = Pt |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
281 unlet d |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
282 unlet Pt |
b76195a1e38e
commit https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
Christian Brabandt <cb@256bit.org>
parents:
8714
diff
changeset
|
283 endfunc |
8863
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
284 |
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
285 func Ignored(job1, job2, status) |
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
286 endfunc |
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
287 |
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
288 func Test_cycle_partial_job() |
8865
be36707a661a
commit https://github.com/vim/vim/commit/9e4043757cd2fc18d071fdd98abf297d74878943
Christian Brabandt <cb@256bit.org>
parents:
8863
diff
changeset
|
289 if has('job') |
be36707a661a
commit https://github.com/vim/vim/commit/9e4043757cd2fc18d071fdd98abf297d74878943
Christian Brabandt <cb@256bit.org>
parents:
8863
diff
changeset
|
290 let job = job_start('echo') |
be36707a661a
commit https://github.com/vim/vim/commit/9e4043757cd2fc18d071fdd98abf297d74878943
Christian Brabandt <cb@256bit.org>
parents:
8863
diff
changeset
|
291 call job_setoptions(job, {'exit_cb': function('Ignored', [job])}) |
be36707a661a
commit https://github.com/vim/vim/commit/9e4043757cd2fc18d071fdd98abf297d74878943
Christian Brabandt <cb@256bit.org>
parents:
8863
diff
changeset
|
292 unlet job |
be36707a661a
commit https://github.com/vim/vim/commit/9e4043757cd2fc18d071fdd98abf297d74878943
Christian Brabandt <cb@256bit.org>
parents:
8863
diff
changeset
|
293 endif |
8863
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
294 endfunc |
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
295 |
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
296 func Test_ref_job_partial_dict() |
8865
be36707a661a
commit https://github.com/vim/vim/commit/9e4043757cd2fc18d071fdd98abf297d74878943
Christian Brabandt <cb@256bit.org>
parents:
8863
diff
changeset
|
297 if has('job') |
be36707a661a
commit https://github.com/vim/vim/commit/9e4043757cd2fc18d071fdd98abf297d74878943
Christian Brabandt <cb@256bit.org>
parents:
8863
diff
changeset
|
298 let g:ref_job = job_start('echo') |
be36707a661a
commit https://github.com/vim/vim/commit/9e4043757cd2fc18d071fdd98abf297d74878943
Christian Brabandt <cb@256bit.org>
parents:
8863
diff
changeset
|
299 let d = {'a': 'b'} |
be36707a661a
commit https://github.com/vim/vim/commit/9e4043757cd2fc18d071fdd98abf297d74878943
Christian Brabandt <cb@256bit.org>
parents:
8863
diff
changeset
|
300 call job_setoptions(g:ref_job, {'exit_cb': function('string', [], d)}) |
be36707a661a
commit https://github.com/vim/vim/commit/9e4043757cd2fc18d071fdd98abf297d74878943
Christian Brabandt <cb@256bit.org>
parents:
8863
diff
changeset
|
301 endif |
8863
e1b84109506a
commit https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
Christian Brabandt <cb@256bit.org>
parents:
8855
diff
changeset
|
302 endfunc |
9104
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
303 |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
304 func Test_auto_partial_rebind() |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
305 let dict1 = {'name': 'dict1'} |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
306 func! dict1.f1() |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
307 return self.name |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
308 endfunc |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
309 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
|
310 |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
311 call assert_equal('dict1', dict1.f1()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
312 call assert_equal('dict1', dict1['f1']()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
313 call assert_equal('dict1', dict1.f2()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
314 call assert_equal('dict1', dict1['f2']()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
315 |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
316 let dict2 = {'name': 'dict2'} |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
317 let dict2.f1 = dict1.f1 |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
318 let dict2.f2 = dict1.f2 |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
319 |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
320 call assert_equal('dict2', dict2.f1()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
321 call assert_equal('dict2', dict2['f1']()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
322 call assert_equal('dict1', dict2.f2()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
323 call assert_equal('dict1', dict2['f2']()) |
2242a5766417
commit https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
Christian Brabandt <cb@256bit.org>
parents:
8865
diff
changeset
|
324 endfunc |
9110
6d3888e2232c
commit https://github.com/vim/vim/commit/2bbf8eff6fab16d86e7bcfc0da1962d31bec7891
Christian Brabandt <cb@256bit.org>
parents:
9104
diff
changeset
|
325 |
6d3888e2232c
commit https://github.com/vim/vim/commit/2bbf8eff6fab16d86e7bcfc0da1962d31bec7891
Christian Brabandt <cb@256bit.org>
parents:
9104
diff
changeset
|
326 func Test_get_partial_items() |
6d3888e2232c
commit https://github.com/vim/vim/commit/2bbf8eff6fab16d86e7bcfc0da1962d31bec7891
Christian Brabandt <cb@256bit.org>
parents:
9104
diff
changeset
|
327 let dict = {'name': 'hello'} |
9117
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
328 let args = ["foo", "bar"] |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
329 let Func = function('MyDictFunc') |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
330 let Cb = function('MyDictFunc', args, dict) |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
331 |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
332 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
|
333 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
|
334 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
|
335 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
|
336 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
|
337 |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
338 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
|
339 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
|
340 call assert_equal([], get(Func, 'args')) |
0cc48b3cd884
commit https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
Christian Brabandt <cb@256bit.org>
parents:
9110
diff
changeset
|
341 call assert_true(empty( get(Func, 'dict'))) |
9110
6d3888e2232c
commit https://github.com/vim/vim/commit/2bbf8eff6fab16d86e7bcfc0da1962d31bec7891
Christian Brabandt <cb@256bit.org>
parents:
9104
diff
changeset
|
342 endfunc |
9183
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
343 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
344 func Test_compare_partials() |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
345 let d1 = {} |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
346 let d2 = {} |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
347 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
348 function d1.f1() dict |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
349 endfunction |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
350 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
351 function d1.f2() dict |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
352 endfunction |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
353 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
354 let F1 = get(d1, 'f1') |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
355 let F2 = get(d1, 'f2') |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
356 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
357 let F1d1 = function(F1, d1) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
358 let F2d1 = function(F2, d2) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
359 let F1d1a1 = function(F1d1, [1]) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
360 let F1d1a12 = function(F1d1, [1, 2]) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
361 let F1a1 = function(F1, [1]) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
362 let F1a2 = function(F1, [2]) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
363 let F1d2 = function(F1, d2) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
364 let d3 = {'f1': F1, 'f2': F2} |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
365 let F1d3 = function(F1, d3) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
366 let F1ad1 = function(F1, [d1]) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
367 let F1ad3 = function(F1, [d3]) |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
368 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
369 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
|
370 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
|
371 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
|
372 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
|
373 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
|
374 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
375 " != |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
376 let X = F1 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
377 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
|
378 let X = F1d1 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
379 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
|
380 let X = F1d1a1 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
381 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
|
382 let X = F1a1 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
383 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
|
384 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
385 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
|
386 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
|
387 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
|
388 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
|
389 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
|
390 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
|
391 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
|
392 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
393 " isnot, option 1 |
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(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
|
397 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
|
398 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
|
399 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
|
400 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
401 " isnot, option 2 |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
402 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
|
403 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
|
404 call assert_true(d1.f1 isnot# d1.f1) " handle_subscript creates new partial each time |
988c8ab557bf
commit https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
Christian Brabandt <cb@256bit.org>
parents:
9145
diff
changeset
|
405 endfunc |