# HG changeset patch # User Bram Moolenaar # Date 1607967904 -3600 # Node ID 4ba101403fa2261052a9dae5dbad0fc67f19932d # Parent 88a6a5655af089113c071923e6ff57b07365a490 patch 8.2.2144: Vim9: some corner cases not tested Commit: https://github.com/vim/vim/commit/025cb1ca8605055383c53bf2c823d7093cf29b82 Author: Bram Moolenaar Date: Mon Dec 14 18:31:27 2020 +0100 patch 8.2.2144: Vim9: some corner cases not tested Problem: Vim9: some corner cases not tested. Solution: Add a few tests. diff --git a/src/testdir/test_vim9_cmd.vim b/src/testdir/test_vim9_cmd.vim --- a/src/testdir/test_vim9_cmd.vim +++ b/src/testdir/test_vim9_cmd.vim @@ -20,6 +20,9 @@ def Test_edit_wildcards() edit X`=filename`xx`=filenr`yy assert_equal('XXtestxx77yy', bufname()) + + CheckDefFailure(['edit `=xxx`'], 'E1001:') + CheckDefFailure(['edit `="foo"'], 'E1083:') enddef def Test_hardcopy_wildcards() @@ -626,6 +629,20 @@ def Test_put_command() assert_equal('aaa', getline(4)) bwipe! + + CheckDefFailure(['put =xxx'], 'E1001:') +enddef + +def Test_put_with_linebreak() + new + var lines =<< trim END + vim9script + pu =split('abc', '\zs') + ->join() + END + CheckScriptSuccess(lines) + getline(2)->assert_equal('a b c') + bwipe! enddef def Test_command_star_range() diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim --- a/src/testdir/test_vim9_script.vim +++ b/src/testdir/test_vim9_script.vim @@ -23,6 +23,11 @@ def Test_range_only() list assert_equal('three$', Screenline(&lines)) bwipe! + + # won't generate anything + if false + :123 + endif enddef let g:alist = [7] @@ -1890,6 +1895,9 @@ def Test_for_loop() enddef def Test_for_loop_fails() + CheckDefFailure(['for '], 'E1097:') + CheckDefFailure(['for x'], 'E1097:') + CheckDefFailure(['for x in'], 'E1097:') CheckDefFailure(['for # in range(5)'], 'E690:') CheckDefFailure(['for i In range(5)'], 'E690:') CheckDefFailure(['var x = 5', 'for x in range(5)'], 'E1017:') @@ -3054,18 +3062,6 @@ def Test_no_unknown_error_after_error() delete('Xdef') enddef -def Test_put_with_linebreak() - new - var lines =<< trim END - vim9script - pu =split('abc', '\zs') - ->join() - END - CheckScriptSuccess(lines) - getline(2)->assert_equal('a b c') - bwipe! -enddef - def InvokeNormal() exe "norm! :m+1\r" enddef diff --git a/src/version.c b/src/version.c --- 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 */ /**/ + 2144, +/**/ 2143, /**/ 2142,