Mercurial > vim
diff src/testdir/test_vim9_cmd.vim @ 20349:e29b2ec8d4d2 v8.2.0730
patch 8.2.0730: Vim9: Assignment to dict member does not work
Commit: https://github.com/vim/vim/commit/1cc2a94f80ba982f83d1e2d37c4726867e36bd9f
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun May 10 19:10:31 2020 +0200
patch 8.2.0730: Vim9: Assignment to dict member does not work
Problem: Vim9: Assignment to dict member does not work.
Solution: Parse dict assignment. Implement getting dict member.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 10 May 2020 19:15:03 +0200 |
parents | 1d84eaed0ec8 |
children | a8a76fd967ab |
line wrap: on
line diff
--- a/src/testdir/test_vim9_cmd.vim +++ b/src/testdir/test_vim9_cmd.vim @@ -44,5 +44,27 @@ def Test_syn_include_wildcards() delete('Xthemine.vim') enddef +def Test_assign_list() + let l: list<string> = [] + l[0] = 'value' + assert_equal('value', l[0]) + + l[1] = 'asdf' + assert_equal('value', l[0]) + assert_equal('asdf', l[1]) + assert_equal('asdf', l[-1]) + assert_equal('value', l[-2]) +enddef + +def Test_assign_dict() + let d: dict<string> = {} + d['key'] = 'value' + assert_equal('value', d['key']) + + d[123] = 'qwerty' + assert_equal('qwerty', d[123]) + assert_equal('qwerty', d['123']) +enddef + " vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker