diff options
author | Bram Moolenaar <Bram@vim.org> | 2020-12-05 21:47:06 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2020-12-05 21:47:06 +0100 |
commit | 08cf0c0d82c7edfcbfe60db34f92759b7fee939a (patch) | |
tree | db1f5d136ccfbe061ce71fdb6251b5765218230c | |
parent | 56602ba153af7130b76daf83933922aaea3e2646 (diff) | |
download | vim-git-08cf0c0d82c7edfcbfe60db34f92759b7fee939a.tar.gz |
patch 8.2.2098: Vim9: function argument of sort() and map() not testedv8.2.2098
Problem: Vim9: function argument of sort() and map() not tested.
Solution: Add a couple of tests.
-rw-r--r-- | src/testdir/test_vim9_builtin.vim | 26 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 26 insertions, 2 deletions
diff --git a/src/testdir/test_vim9_builtin.vim b/src/testdir/test_vim9_builtin.vim index 301b270e6..50b711f8d 100644 --- a/src/testdir/test_vim9_builtin.vim +++ b/src/testdir/test_vim9_builtin.vim @@ -229,6 +229,18 @@ def Wrong_dict_key_type(items: list<number>): list<number> return filter(items, {_, val -> get({[val]: 1}, 'x')}) enddef +def Test_map_function_arg() + var lines =<< trim END + def MapOne(i: number, v: string): string + return i .. ':' .. v + enddef + var l = ['a', 'b', 'c'] + map(l, MapOne) + assert_equal(['0:a', '1:b', '2:c'], l) + END + CheckDefAndScriptSuccess(lines) +enddef + def Test_filter_wrong_dict_key_type() assert_fails('Wrong_dict_key_type([1, 2, 3])', 'E1012:') enddef @@ -523,8 +535,18 @@ def Test_sort_return_type() enddef def Test_sort_argument() - var res = ['b', 'a', 'c']->sort('i') - res->assert_equal(['a', 'b', 'c']) + var lines =<< trim END + var res = ['b', 'a', 'c']->sort('i') + res->assert_equal(['a', 'b', 'c']) + + def Compare(a: number, b: number): number + return a - b + enddef + var l = [3, 6, 7, 1, 8, 2, 4, 5] + sort(l, Compare) + assert_equal([1, 2, 3, 4, 5, 6, 7, 8], l) + END + CheckDefAndScriptSuccess(lines) enddef def Test_split() diff --git a/src/version.c b/src/version.c index 95f3f62e7..a24a261fd 100644 --- a/src/version.c +++ b/src/version.c @@ -751,6 +751,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 2098, +/**/ 2097, /**/ 2096, |