summaryrefslogtreecommitdiffstats
path: root/src/testdir
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2016-03-15 12:36:08 +0100
committerBram Moolenaar <Bram@vim.org>2016-03-15 12:36:08 +0100
commit346418c624f1bc7c04c98907134a2b284e6452dd (patch)
tree9536dbf311a117975028658538f2f88ad68e54ed /src/testdir
parent790500a8e65bee295ef51a59dfa67ecbaab8ea17 (diff)
patch 7.4.1564v7.4.1564
Problem: An empty list in function() causes an error. Solution: Handle an empty list like there is no list of arguments.
Diffstat (limited to 'src/testdir')
-rw-r--r--src/testdir/test_partial.vim11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/testdir/test_partial.vim b/src/testdir/test_partial.vim
index 998b232206..b1a52db03b 100644
--- a/src/testdir/test_partial.vim
+++ b/src/testdir/test_partial.vim
@@ -19,6 +19,9 @@ func Test_partial_args()
call assert_equal("foo/bar/xxx", Cb("xxx"))
call assert_equal("foo/bar/yyy", call(Cb, ["yyy"]))
+ let Cb = function('MyFunc', [])
+ call assert_equal("a/b/c", Cb("a", "b", "c"))
+
let Sort = function('MySort', [1])
call assert_equal([1, 2, 3], sort([3, 1, 2], Sort))
let Sort = function('MySort', [0])
@@ -34,10 +37,16 @@ func Test_partial_dict()
let Cb = function('MyDictFunc', ["foo", "bar"], dict)
call assert_equal("hello/foo/bar", Cb())
call assert_fails('Cb("xxx")', 'E492:')
+
let Cb = function('MyDictFunc', ["foo"], dict)
call assert_equal("hello/foo/xxx", Cb("xxx"))
call assert_fails('Cb()', 'E492:')
+
+ let Cb = function('MyDictFunc', [], dict)
+ call assert_equal("hello/ttt/xxx", Cb("ttt", "xxx"))
+ call assert_fails('Cb("yyy")', 'E492:')
+
let Cb = function('MyDictFunc', dict)
call assert_equal("hello/xxx/yyy", Cb("xxx", "yyy"))
- call assert_fails('Cb()', 'E492:')
+ call assert_fails('Cb("fff")', 'E492:')
endfunc