Mercurial > vim
comparison src/testdir/test_vim9_script.vim @ 19583:ba35daca6553 v8.2.0348
patch 8.2.0348: Vim9: not all code tested
Commit: https://github.com/vim/vim/commit/5381c7a1628eeca81a46b811158be4cd47ba5815
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Mar 2 22:53:32 2020 +0100
patch 8.2.0348: Vim9: not all code tested
Problem: Vim9: not all code tested.
Solution: Add a few more tests. fix using "b:" in literal dictionary.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 02 Mar 2020 23:00:06 +0100 |
parents | aae19dd172c0 |
children | 0303f920a7d4 |
comparison
equal
deleted
inserted
replaced
19582:1aac86ea0cd9 | 19583:ba35daca6553 |
---|---|
66 let party1: partial | 66 let party1: partial |
67 let party2: partial = funcref('Test_syntax') | 67 let party2: partial = funcref('Test_syntax') |
68 | 68 |
69 " type becomes list<any> | 69 " type becomes list<any> |
70 let somelist = rand() > 0 ? [1, 2, 3] : ['a', 'b', 'c'] | 70 let somelist = rand() > 0 ? [1, 2, 3] : ['a', 'b', 'c'] |
71 " type becomes dict<any> | |
72 let somedict = rand() > 0 ? #{a: 1, b: 2} : #{a: 'a', b: 'b'} | |
71 | 73 |
72 g:newvar = 'new' | 74 g:newvar = 'new' |
73 assert_equal('new', g:newvar) | 75 assert_equal('new', g:newvar) |
74 | 76 |
75 assert_equal('yes', g:existing) | 77 assert_equal('yes', g:existing) |
371 | 373 |
372 import {exp_name} from './Xexport.vim' | 374 import {exp_name} from './Xexport.vim' |
373 g:imported_name = exp_name | 375 g:imported_name = exp_name |
374 exp_name ..= ' Doe' | 376 exp_name ..= ' Doe' |
375 g:imported_name_appended = exp_name | 377 g:imported_name_appended = exp_name |
378 g:imported_later = exported | |
376 END | 379 END |
377 | 380 |
378 writefile(import_script_lines, 'Ximport.vim') | 381 writefile(import_script_lines, 'Ximport.vim') |
379 writefile(s:export_script_lines, 'Xexport.vim') | 382 writefile(s:export_script_lines, 'Xexport.vim') |
380 | 383 |
382 | 385 |
383 assert_equal('bobbie', g:result) | 386 assert_equal('bobbie', g:result) |
384 assert_equal('bob', g:localname) | 387 assert_equal('bob', g:localname) |
385 assert_equal(9876, g:imported) | 388 assert_equal(9876, g:imported) |
386 assert_equal(9879, g:imported_added) | 389 assert_equal(9879, g:imported_added) |
390 assert_equal(9879, g:imported_later) | |
387 assert_equal('Exported', g:imported_func) | 391 assert_equal('Exported', g:imported_func) |
388 assert_equal('John', g:imported_name) | 392 assert_equal('John', g:imported_name) |
389 assert_equal('John Doe', g:imported_name_appended) | 393 assert_equal('John Doe', g:imported_name_appended) |
390 assert_false(exists('g:name')) | 394 assert_false(exists('g:name')) |
391 | 395 |
392 unlet g:result | 396 unlet g:result |
393 unlet g:localname | 397 unlet g:localname |
394 unlet g:imported | 398 unlet g:imported |
395 unlet g:imported_added | 399 unlet g:imported_added |
400 unlet g:imported_later | |
396 unlet g:imported_func | 401 unlet g:imported_func |
397 unlet g:imported_name g:imported_name_appended | 402 unlet g:imported_name g:imported_name_appended |
398 delete('Ximport.vim') | 403 delete('Ximport.vim') |
399 | 404 |
405 let import_in_def_lines =<< trim END | |
406 vim9script | |
407 def ImportInDef() | |
408 import exported from './Xexport.vim' | |
409 g:imported = exported | |
410 exported += 7 | |
411 g:imported_added = exported | |
412 enddef | |
413 ImportInDef() | |
414 END | |
415 writefile(import_in_def_lines, 'Ximport2.vim') | |
416 source Ximport2.vim | |
417 " TODO: this should be 9879 | |
418 assert_equal(9876, g:imported) | |
419 assert_equal(9883, g:imported_added) | |
420 unlet g:imported | |
421 unlet g:imported_added | |
422 delete('Ximport2.vim') | |
423 | |
400 let import_star_as_lines =<< trim END | 424 let import_star_as_lines =<< trim END |
401 vim9script | 425 vim9script |
402 import * as Export from './Xexport.vim' | 426 import * as Export from './Xexport.vim' |
403 def UseExport() | 427 def UseExport() |
404 g:imported = Export.exported | 428 g:imported = Export.exported |
405 enddef | 429 enddef |
406 UseExport() | 430 UseExport() |
407 END | 431 END |
408 writefile(import_star_as_lines, 'Ximport.vim') | 432 writefile(import_star_as_lines, 'Ximport.vim') |
409 source Ximport.vim | 433 source Ximport.vim |
410 assert_equal(9876, g:imported) | 434 assert_equal(9883, g:imported) |
411 | 435 |
412 let import_star_lines =<< trim END | 436 let import_star_lines =<< trim END |
413 vim9script | 437 vim9script |
414 import * from './Xexport.vim' | 438 import * from './Xexport.vim' |
415 g:imported = exported | 439 g:imported = exported |