Mercurial > vim
changeset 29006:99a7eb1881c7 v8.2.5025
patch 8.2.5025: Vim9: a few lines not covered by tests
Commit: https://github.com/vim/vim/commit/5cb53b7afe6bde8f2bf6fc6b65b86071b67a8554
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu May 26 19:54:05 2022 +0100
patch 8.2.5025: Vim9: a few lines not covered by tests
Problem: Vim9: a few lines not covered by tests.
Solution: Add a few tests.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 26 May 2022 21:00:04 +0200 |
parents | 177af01c5c4d |
children | 0e8c870971f7 |
files | src/testdir/test_vim9_assign.vim src/testdir/test_vim9_import.vim src/version.c src/vim9script.c |
diffstat | 4 files changed, 44 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/testdir/test_vim9_assign.vim +++ b/src/testdir/test_vim9_assign.vim @@ -213,6 +213,8 @@ def Test_assignment() v9.CheckDefFailure(['var s:var = 123'], 'E1101:') v9.CheckDefFailure(['var s:var: number'], 'E1101:') + v9.CheckDefAndScriptFailure(['var $VAR: number'], ['E1016:', 'E475:']) + lines =<< trim END vim9script def SomeFunc()
--- a/src/testdir/test_vim9_import.vim +++ b/src/testdir/test_vim9_import.vim @@ -312,6 +312,14 @@ def Test_vim9_import_export() writefile(import_no_as_lines, 'Ximport.vim') assert_fails('source Ximport.vim', 'E488:', '', 2, 'Ximport.vim') + # trailing starts with "as" + var import_bad_as_lines =<< trim END + vim9script + import './Xexport.vim' asname + END + writefile(import_no_as_lines, 'Ximport.vim') + assert_fails('source Ximport.vim', 'E488:', '', 2, 'Ximport.vim') + var import_invalid_string_lines =<< trim END vim9script import Xexport.vim @@ -396,6 +404,27 @@ def Test_vim9_import_export() delete('Xvim9_script') enddef +def Test_import_very_long_name() + var lines =<< trim END + vim9script + + export var verylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongname = 'asdf' + END + writefile(lines, 'Xverylong.vim') + + lines =<< trim END + vim9script + import './Xverylong.vim' + + g:result = Xverylong.verylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongname + END + v9.CheckScriptSuccess(lines) + assert_equal('asdf', g:result) + + delete('Xverylong.vim') + unlet g:result +enddef + def Test_import_funcref() var lines =<< trim END vim9script @@ -712,6 +741,16 @@ def Test_use_relative_autoload_import_in nunmap <F3> enddef +def Test_autoload_import_var() + # variable name starts with "autoload" + var lines =<< trim END + vim9script + var autoloaded = "Xtest.vim" + import autoloaded + END + v9.CheckScriptFailure(lines, 'E1053: Could not import "Xtest.vim') +enddef + def Test_use_autoload_import_in_mapping() var lines =<< trim END vim9script
--- a/src/version.c +++ b/src/version.c @@ -735,6 +735,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 5025, +/**/ 5024, /**/ 5023,
--- a/src/vim9script.c +++ b/src/vim9script.c @@ -804,7 +804,7 @@ find_exported( } /* - * Declare a script-local variable without init: "let var: type". + * Declare a script-local variable without init: "var name: type". * "const" is an error since the value is missing. * Returns a pointer to after the type. */