diff src/testdir/test_method.vim @ 19787:906269bf83d5 v8.2.0450

patch 8.2.0450: not enough testing for restricted mode and function calls Commit: https://github.com/vim/vim/commit/7d941ee032c02a4b682201881eb5c1f1958f17ee Author: Bram Moolenaar <Bram@vim.org> Date: Thu Mar 26 14:11:58 2020 +0100 patch 8.2.0450: not enough testing for restricted mode and function calls Problem: Not enough testing for restricted mode and function calls. Solution: Add more tests. (Yegappan Lakshmanan, closes https://github.com/vim/vim/issues/5847)
author Bram Moolenaar <Bram@vim.org>
date Thu, 26 Mar 2020 14:15:04 +0100
parents b3e93a05c3ca
children 6a4806e326dd
line wrap: on
line diff
--- a/src/testdir/test_method.vim
+++ b/src/testdir/test_method.vim
@@ -152,6 +152,22 @@ endfunc
 
 func Test_method_not_supported()
   call assert_fails('eval 123->changenr()', 'E276:')
+  call assert_fails('echo "abc"->invalidfunc()', 'E117:')
+  " Test for too many or too few arguments to a method
+  call assert_fails('let n="abc"->len(2)', 'E118:')
+  call assert_fails('let n=10->setwinvar()', 'E119:')
 endfunc
 
-" vim: shiftwidth=2 sts=2 expandtab
+" Test for passing optional arguments to methods
+func Test_method_args()
+  let v:errors = []
+  let n = 10->assert_inrange(1, 5, "Test_assert_inrange")
+  if v:errors[0] !~ 'Test_assert_inrange'
+    call assert_report(v:errors[0])
+  else
+    " Test passed
+    let v:errors = []
+  endif
+endfunc
+
+" vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker