comparison src/testdir/test_vim9_import.vim @ 28570:35e24d9de858 v8.2.4809

patch 8.2.4809: various things no6 properly tested Commit: https://github.com/vim/vim/commit/885de449c0c0ef4a8541ed1f5377351844384516 Author: Yegappan Lakshmanan <yegappan@yahoo.com> Date: Sat Apr 23 10:51:14 2022 +0100 patch 8.2.4809: various things no6 properly tested Problem: Various things no6 properly tested. Solution: Add various test cases. (Yegappan Lakshmanan, closes https://github.com/vim/vim/issues/10259)
author Bram Moolenaar <Bram@vim.org>
date Sat, 23 Apr 2022 12:00:06 +0200
parents 938c174b8088
children 294771aab3ae
comparison
equal deleted inserted replaced
28569:ec72a310d1b7 28570:35e24d9de858
504 vim9script 504 vim9script
505 import './Xfoo.vim' as g:foo 505 import './Xfoo.vim' as g:foo
506 END 506 END
507 v9.CheckScriptFailure(lines, 'E1047:') 507 v9.CheckScriptFailure(lines, 'E1047:')
508 508
509 delete('Xfoo.vim')
510
511 lines =<< trim END 509 lines =<< trim END
512 vim9script 510 vim9script
513 def TheFunc() 511 def TheFunc()
514 echo 'the func' 512 echo 'the func'
515 enddef 513 enddef
574 vim9script 572 vim9script
575 import './Ximport/.vimrc' as vimrc 573 import './Ximport/.vimrc' as vimrc
576 END 574 END
577 v9.CheckScriptSuccess(lines) 575 v9.CheckScriptSuccess(lines)
578 576
577 new
578 setline(1, ['vim9script', 'import "" as abc'])
579 assert_fails('source', 'E1071: Invalid string for :import: "" as abc')
580 setline(2, 'import [] as abc')
581 assert_fails('source', 'E1071: Invalid string for :import: [] as abc')
582 setline(2, 'import test_null_string() as abc')
583 assert_fails('source', 'E1071: Invalid string for :import: test_null_string() as abc')
584 bw!
585 call writefile(['vim9script', "import './Xfoo.vim' ask expo"], 'Xbar.vim')
586 assert_fails('source Xbar.vim', 'E488: Trailing characters: ask expo')
587 writefile([], 'Xtemp')
588 call writefile(['vim9script', "import './Xtemp'"], 'Xbar.vim')
589 assert_fails('source Xbar.vim', 'E1257: Imported script must use "as" or end in .vim: Xtemp')
590 delete('Xtemp')
591 call writefile(['vim9script', "import './Xfoo.vim' as abc | foobar"], 'Xbar.vim')
592 assert_fails('source Xbar.vim', 'E492: Not an editor command: foobar')
593 call delete('Xbar.vim')
594
579 delete('Ximport', 'rf') 595 delete('Ximport', 'rf')
596 delete('Xfoo.vim')
580 enddef 597 enddef
581 598
582 func g:Trigger() 599 func g:Trigger()
583 source Ximport.vim 600 source Ximport.vim
584 return "echo 'yes'\<CR>" 601 return "echo 'yes'\<CR>"
1402 1419
1403 def Test_export_fails() 1420 def Test_export_fails()
1404 v9.CheckScriptFailure(['export var some = 123'], 'E1042:') 1421 v9.CheckScriptFailure(['export var some = 123'], 'E1042:')
1405 v9.CheckScriptFailure(['vim9script', 'export var g:some'], 'E1022:') 1422 v9.CheckScriptFailure(['vim9script', 'export var g:some'], 'E1022:')
1406 v9.CheckScriptFailure(['vim9script', 'export echo 134'], 'E1043:') 1423 v9.CheckScriptFailure(['vim9script', 'export echo 134'], 'E1043:')
1424 v9.CheckScriptFailure(['vim9script', 'export function /a1b2c3'], 'E1044:')
1407 1425
1408 assert_fails('export something', 'E1043:') 1426 assert_fails('export something', 'E1043:')
1409 enddef 1427 enddef
1410 1428
1411 func Test_import_fails_without_script() 1429 func Test_import_fails_without_script()
2644 lines =<< trim END 2662 lines =<< trim END
2645 vim9script noclear noclear 2663 vim9script noclear noclear
2646 var n = 0 2664 var n = 0
2647 END 2665 END
2648 v9.CheckScriptFailure(lines, 'E983: Duplicate argument: noclear') 2666 v9.CheckScriptFailure(lines, 'E983: Duplicate argument: noclear')
2667
2668 lines =<< trim END
2669 vim9script noclears
2670 var n = 0
2671 END
2672 v9.CheckScriptFailure(lines, 'E475: Invalid argument: noclears')
2649 enddef 2673 enddef
2650 2674
2651 def Test_import_autoload_fails() 2675 def Test_import_autoload_fails()
2652 var lines =<< trim END 2676 var lines =<< trim END
2653 vim9script 2677 vim9script