Mercurial > vim
diff src/testdir/test_vim9_script.vim @ 19818:c1c88b333481 v8.2.0465
patch 8.2.0465: Vim9: dead code and wrong return type
Commit: https://github.com/vim/vim/commit/599c89c82fe3c85378e8077b4e589f0ee4218da2
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Mar 28 14:53:20 2020 +0100
patch 8.2.0465: Vim9: dead code and wrong return type
Problem: Vim9: dead code and wrong return type.
Solution: Remove dead code. Fix return type. Add more tests.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 28 Mar 2020 15:00:10 +0100 |
parents | 906269bf83d5 |
children | fc3cdc819d80 |
line wrap: on
line diff
--- a/src/testdir/test_vim9_script.vim +++ b/src/testdir/test_vim9_script.vim @@ -112,6 +112,16 @@ func Test_assignment_failure() call CheckDefFailure(['let var: dict <number>'], 'E1007:') call CheckDefFailure(['let var: dict<number'], 'E1009:') +endfunc + +func Test_wrong_type() + call CheckDefFailure(['let var: list<nothing>'], 'E1010:') + call CheckDefFailure(['let var: list<list<nothing>>'], 'E1010:') + call CheckDefFailure(['let var: dict<nothing>'], 'E1010:') + call CheckDefFailure(['let var: dict<dict<nothing>>'], 'E1010:') + + call CheckDefFailure(['let var: dict<number'], 'E1009:') + call CheckDefFailure(['let var: dict<list<number>'], 'E1009:') call CheckDefFailure(['let var: ally'], 'E1010:') call CheckDefFailure(['let var: bram'], 'E1010:') @@ -436,6 +446,37 @@ def Test_vim9_import_export() source Ximport.vim assert_equal(9883, g:imported) + let import_star_as_lines_no_dot =<< trim END + vim9script + import * as Export from './Xexport.vim' + def Func() + let dummy = 1 + let imported = Export + dummy + enddef + END + writefile(import_star_as_lines_no_dot, 'Ximport.vim') + assert_fails('source Ximport.vim', 'E1060:') + + let import_star_as_lines_dot_space =<< trim END + vim9script + import * as Export from './Xexport.vim' + def Func() + let imported = Export . exported + enddef + END + writefile(import_star_as_lines_dot_space, 'Ximport.vim') + assert_fails('source Ximport.vim', 'E1074:') + + let import_star_as_lines_missing_name =<< trim END + vim9script + import * as Export from './Xexport.vim' + def Func() + let imported = Export. + enddef + END + writefile(import_star_as_lines_missing_name, 'Ximport.vim') + assert_fails('source Ximport.vim', 'E1048:') + let import_star_lines =<< trim END vim9script import * from './Xexport.vim'