diff options
author | Bram Moolenaar <Bram@vim.org> | 2020-07-27 21:43:28 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2020-07-27 21:43:28 +0200 |
commit | b13ab99908097d54e21ab5adad22f4ad2a8ec688 (patch) | |
tree | 8b35ffaf45b3ed9b21bce9bc8f6422b31564be69 /src/testdir | |
parent | 622b3568fa1baf07671d31390815fb0a55a99891 (diff) |
patch 8.2.1306: checking for first character of dict key is inconsistentv8.2.1306
Problem: Checking for first character of dict key is inconsistent.
Solution: Add eval_isdictc(). (closes #6546)
Diffstat (limited to 'src/testdir')
-rw-r--r-- | src/testdir/test_let.vim | 2 | ||||
-rw-r--r-- | src/testdir/test_listdict.vim | 7 | ||||
-rw-r--r-- | src/testdir/test_vim9_expr.vim | 13 |
3 files changed, 20 insertions, 2 deletions
diff --git a/src/testdir/test_let.vim b/src/testdir/test_let.vim index 9a399e8f38..017b2a4a47 100644 --- a/src/testdir/test_let.vim +++ b/src/testdir/test_let.vim @@ -293,7 +293,7 @@ func Test_let_errors() let s = "var" let var = 1 call assert_fails('let var += [1,2]', 'E734:') - call assert_fails('let {s}.1 = 2', 'E15:') + call assert_fails('let {s}.1 = 2', 'E18:') call assert_fails('let a[1] = 5', 'E121:') let l = [[1,2]] call assert_fails('let l[:][0] = [5]', 'E708:') diff --git a/src/testdir/test_listdict.vim b/src/testdir/test_listdict.vim index b064846993..beeda2f5bb 100644 --- a/src/testdir/test_listdict.vim +++ b/src/testdir/test_listdict.vim @@ -282,6 +282,13 @@ func Test_dict_func() call assert_equal('xxx3', Fn('xxx')) endfunc +func Test_dict_assign() + let d = {} + let d.1 = 1 + let d._ = 2 + call assert_equal({'1': 1, '_': 2}, d) +endfunc + " Function in script-local List or Dict func Test_script_local_dict_func() let g:dict = {} diff --git a/src/testdir/test_vim9_expr.vim b/src/testdir/test_vim9_expr.vim index d7072f34b9..5b46c32f96 100644 --- a/src/testdir/test_vim9_expr.vim +++ b/src/testdir/test_vim9_expr.vim @@ -1310,6 +1310,11 @@ def Test_expr_member() ]) assert_equal(1, d .one) + d = {'1': 1, '_': 2} + assert_equal(1, d + .1) + assert_equal(2, d + ._) # getting the one member should clear the dict after getting the item assert_equal('one', #{one: 'one'}.one) @@ -1330,10 +1335,16 @@ def Test_expr_member_vim9script() vim9script let d = #{one: 'one', - two: 'two'} + two: 'two', + 1: 1, + _: 2} assert_equal('one', d.one) assert_equal('one', d .one) + assert_equal(1, d + .1) + assert_equal(2, d + ._) assert_equal('one', d[ 'one' ]) |