# HG changeset patch # User Bram Moolenaar # Date 1644012005 -3600 # Node ID 8af6e7761b0c4fd27ff02680f2e4edda23e76036 # Parent de25fd9bb1a65e2eed8d0faad618527e25431bce patch 8.2.4297: Vim9: not all code covered by tests Commit: https://github.com/vim/vim/commit/21ebb0899ecf9049c3e1c9cbc2e06fd8e2a99e06 Author: Bram Moolenaar Date: Fri Feb 4 21:58:58 2022 +0000 patch 8.2.4297: Vim9: not all code covered by tests Problem: Vim9: not all code covered by tests. Solution: Add a couple more tests. diff --git a/src/testdir/test_vim9_disassemble.vim b/src/testdir/test_vim9_disassemble.vim --- a/src/testdir/test_vim9_disassemble.vim +++ b/src/testdir/test_vim9_disassemble.vim @@ -2487,6 +2487,44 @@ def Test_debug_for() res) enddef +def s:TryCatch() + try + echo "try" + catch /error/ + echo "caught" + endtry +enddef + +def Test_debug_try_catch() + var res = execute('disass debug s:TryCatch') + assert_match('\d*_TryCatch\_s*' .. + 'try\_s*' .. + '0 DEBUG line 1-1 varcount 0\_s*' .. + '1 TRY catch -> 7, endtry -> 17\_s*' .. + 'echo "try"\_s*' .. + '2 DEBUG line 2-2 varcount 0\_s*' .. + '3 PUSHS "try"\_s*' .. + '4 ECHO 1\_s*' .. + 'catch /error/\_s*' .. + '5 DEBUG line 3-3 varcount 0\_s*' .. + '6 JUMP -> 17\_s*' .. + '7 DEBUG line 4-3 varcount 0\_s*' .. + '8 PUSH v:exception\_s*' .. + '9 PUSHS "error"\_s*' .. + '10 COMPARESTRING =\~\_s*' .. + '11 JUMP_IF_FALSE -> 17\_s*' .. + '12 CATCH\_s*' .. + 'echo "caught"\_s*' .. + '13 DEBUG line 4-4 varcount 0\_s*' .. + '14 PUSHS "caught"\_s*' .. + '15 ECHO 1\_s*' .. + 'endtry\_s*' .. + '16 DEBUG line 5-5 varcount 0\_s*' .. + '17 ENDTRY\_s*' .. + '\d\+ RETURN void', + res) +enddef + func s:Legacy() dict echo 'legacy' endfunc 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 @@ -1580,6 +1580,14 @@ def Test_if_const_expr() burp endif + if 0 + if 1 + echo nothing + elseif 1 + echo still nothing + endif + endif + # expression with line breaks skipped if false ('aaa' diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -747,6 +747,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 4297, +/**/ 4296, /**/ 4295,