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.
diff --git a/src/testdir/test_vim9_assign.vim b/src/testdir/test_vim9_assign.vim
index a13e370..b0ce398 100644
--- a/src/testdir/test_vim9_assign.vim
+++ b/src/testdir/test_vim9_assign.vim
@@ -213,6 +213,8 @@
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()
diff --git a/src/testdir/test_vim9_import.vim b/src/testdir/test_vim9_import.vim
index 159e51b..415a7a9 100644
--- a/src/testdir/test_vim9_import.vim
+++ b/src/testdir/test_vim9_import.vim
@@ -312,6 +312,14 @@
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 @@
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 @@
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
diff --git a/src/version.c b/src/version.c
index ec52074..1b7615c 100644
--- a/src/version.c
+++ b/src/version.c
@@ -735,6 +735,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 5025,
+/**/
5024,
/**/
5023,
diff --git a/src/vim9script.c b/src/vim9script.c
index 6595882..14f36b4 100644
--- a/src/vim9script.c
+++ b/src/vim9script.c
@@ -804,7 +804,7 @@
}
/*
- * 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.
*/