summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2021-02-27 22:33:21 +0100
committerBram Moolenaar <Bram@vim.org>2021-02-27 22:33:21 +0100
commit0f2a5cc68b676b56694c27034690a7b9ef049feb (patch)
tree5ae77b623a79d6e40c9c034f4eee4325c43e6033
parent9faec4e3d439968e21ad74e917aebb289df8f849 (diff)
downloadvim-git-8.2.2554.tar.gz
patch 8.2.2554: Vim9: exporting a final is not testedv8.2.2554
Problem: Vim9: exporting a final is not tested. Solution: Add a test.
-rw-r--r--src/testdir/test_vim9_script.vim17
-rw-r--r--src/version.c2
2 files changed, 19 insertions, 0 deletions
diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim
index a262bcb62..707d89e5a 100644
--- a/src/testdir/test_vim9_script.vim
+++ b/src/testdir/test_vim9_script.vim
@@ -918,6 +918,7 @@ let s:export_script_lines =<< trim END
export def Exported(): string
return 'Exported'
enddef
+ export final theList = [1]
END
def Undo_export_script_lines()
@@ -945,6 +946,10 @@ def Test_vim9_import_export()
exp_name ..= ' Doe'
g:imported_name_appended = exp_name
g:imported_later = exported
+
+ import theList from './Xexport.vim'
+ theList->add(2)
+ assert_equal([1, 2], theList)
END
writefile(import_script_lines, 'Ximport.vim')
@@ -1144,6 +1149,18 @@ def Test_vim9_import_export()
writefile(import_assign_to_const, 'Ximport.vim')
assert_fails('source Ximport.vim', 'E46:', '', 1, '_Assign')
+ # try changing an imported final
+ var import_assign_to_final =<< trim END
+ vim9script
+ import theList from './Xexport.vim'
+ def Assign()
+ theList = [2]
+ enddef
+ defcompile
+ END
+ writefile(import_assign_to_final, 'Ximport.vim')
+ assert_fails('source Ximport.vim', 'E46:', '', 1, '_Assign')
+
# import a very long name, requires making a copy
var import_long_name_lines =<< trim END
vim9script
diff --git a/src/version.c b/src/version.c
index eece321b3..6f05f36a9 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 2554,
+/**/
2553,
/**/
2552,