aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/testdir/test_listdict.vim
Commit message (Collapse)AuthorAge
* vim-patch:8.2.1698: cannot lock a variable in legacy Vim script like in Vim9 ↵zeertzjq2023-01-19
| | | | | | | | | | (#21883) Problem: Cannot lock a variable in legacy Vim script like in Vim9. Solution: Make ":lockvar 0" work. https://github.com/vim/vim/commit/a187c43cfe8863d48b2159d695fedcb71f8525c1 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:8.2.2886: various pieces of code not covered by testszeertzjq2022-11-25
| | | | | | | | | | | Problem: Various pieces of code not covered by tests. Solution: Add a few more tests. (Yegappan Lakshmanan, closes vim/vim#8255) https://github.com/vim/vim/commit/34fcb697240c1bc9e69417ed75db3b1a83479724 Nvim does not have test_unknown(). Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* vim-patch:8.2.1736: failure to compile a pattern not tested muchzeertzjq2022-11-06
| | | | | | | | Problem: Failure to compile a pattern not tested much. Solution: Add tests where a pattern fails to compile. (Yegappan Lakshmanan, closes vim/vim#7004) https://github.com/vim/vim/commit/531be47ac5522807b265c6287021a01c9b895ac9
* vim-patch:8.2.3055: strange error for assigning to "x.key" on non-dictionaryzeertzjq2022-11-06
| | | | | | | | | Problem: Strange error for assigning to "x.key" on non-dictionary. Solution: Add a specific error message. (closes vim/vim#8451) https://github.com/vim/vim/commit/3a3b10e87a10dd0bc355618dbfc4a0a6c828aad7 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:8.2.1306: checking for first character of dict key is inconsistentzeertzjq2022-11-06
| | | | | | | | | | | Problem: Checking for first character of dict key is inconsistent. Solution: Add eval_isdictc(). (closes vim/vim#6546) https://github.com/vim/vim/commit/b13ab99908097d54e21ab5adad22f4ad2a8ec688 Omit handle_subscript() change: only affects Vim9 script. Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:8.2.1600: Vim9: cannot use "true" with deepcopy()zeertzjq2022-11-05
| | | | | | | | | Problem: Vim9: cannot use "true" with deepcopy(). Solution: Use tv_get_bool_chk(). (closes vim/vim#6867) https://github.com/vim/vim/commit/44b4a246b62e0622550b963bcf3034dce3bcfc0c Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:partial:8.2.1183: assert_fails() checks the last error messagezeertzjq2022-11-05
| | | | | | | | | | | | | | | Problem: assert_fails() checks the last error message. Solution: Check the first error, it is more relevant. Fix all the tests that rely on the old behavior. https://github.com/vim/vim/commit/9b7bf9e98f06ece595fed7a3ff53ecce89797a53 Skip test_listener.vim, test_textprop.vim, test_viminfo.vim. Skip test_python2.vim: affected line fails and hasn't been ported. Skip test_python3.vim: affected lines fail and haven't been ported. Skip CHECK_LIST_MATERIALIZE. Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:8.2.0448: various functions not properly tested (#20926)zeertzjq2022-11-04
| | | | | | | | | | Problem: Various functions not properly tested. Solution: Add more tests, especially for failures. (Yegappan Lakshmanan, closes vim/vim#5843) https://github.com/vim/vim/commit/0e05de46226eb4e5ea580beefa71831f92d613d3 Cherry-pick test changes from patch 8.2.0427 and skip Test_has(). Cherry-pick Test_complete_wildmenu() change from patch 8.2.4339.
* vim-patch:8.2.0619: null dict is not handled like an empty dictzeertzjq2022-10-26
| | | | | | | | | Problem: Null dict is not handled like an empty dict. Solution: Fix the code and add tests. (Yegappan Lakshmanan, closes vim/vim#5968) https://github.com/vim/vim/commit/ea04a6e8baff2f27da7cdd54bf70a5525994f76d Nvim doesn't support modifying NULL list, so comment out a line.
* vim-patch:8.2.0610: some tests are still old stylezeertzjq2022-10-26
| | | | | | | | | | | Problem: Some tests are still old style. Solution: Convert to new style tests. (Yegappan Lakshmanan, closes vim/vim#5957) https://github.com/vim/vim/commit/08f4157c5cabc55bcb22f04dd7c717aba40caa34 Fix missing error message when sort() compare function fails. Cherry-pick a line in test_utf8.vim from patch 8.2.0448. Cherry-pick builtin_function() change from patch 8.2.0595.
* vim-patch:8.2.0418: code in eval.c not sufficiently covered by testszeertzjq2022-10-26
| | | | | | | | | Problem: Code in eval.c not sufficiently covered by tests. Solution: Add more tests. (Yegappan Lakshmanan, closes vim/vim#5815) https://github.com/vim/vim/commit/8b633135106dda8605463b780573c45b00c22afe Nvim does not have v:none, so comment out test for it.
* vim-patch:8.2.0401: not enough test coverage for evalvars.czeertzjq2022-10-26
| | | | | | | | | | | | | Problem: Not enough test coverage for evalvars.c. Solution: Add more tests. (Yegappan Lakshmanan, closes vim/vim#5804) https://github.com/vim/vim/commit/8dfcce3a78ccb520cc9d09081f998091494c50bf Assert E475 instead of E474 in :redir test because a later patch changed the error number. Comment out the test for :echo with a deeply nested container as Nvim implements :echo very differently.
* vim-patch:9.0.0409: #{g:x} was seen as a curly-braces expressionii142022-09-08
| | | | | | Problem: #{g:x} was seen as a curly-braces expression. Solution: Do never see #{} as a curly-braces expression. (closes vim/vim#11075) https://github.com/vim/vim/commit/7c7e1e9b98d4e5dbe7358c795a635c6f1f36f418
* vim-patch:8.2.3702: first key in dict is seen as curly expression and failszeertzjq2022-09-08
| | | | | | Problem: First key in dict is seen as curly expression and fails. Solution: Ignore failure of curly expression. (closes vim/vim#9247) https://github.com/vim/vim/commit/98cb90ef865089a5ddd20bc0303d449fb7d97fb2
* vim-patch:8.2.0522: several errors are not tested for (#19901)zeertzjq2022-08-23
| | | | | | | | | | | | | | Problem: Several errors are not tested for. Solution: Add tests. (Yegappan Lakshmanan, closes vim/vim#5892) https://github.com/vim/vim/commit/ee4e0c1e9a81cb5d96e0060203a9033c2f28588e Omit Test_range() change: reverted in patch 8.2.0615. Cherry-pick Test_z_no_space_before_xxx() from patch 8.2.0195. Cherry-pick Test_reverse_sort_uniq() change from patch 8.2.0183. Make uniq() error behavior consistent with sort(). Cherry-pick Test_set_ttytype() change from patch 8.1.1826. Cherry-pick quickfix checks from patch 8.1.2373 to test_preview.vim. Test_viminfo_error() is applicable. Cherry-pick E1058 from patch 8.2.0149 and port Test_deep_nest() to Lua.
* vim-patch:8.2.1803: a few failures are not testedzeertzjq2022-08-15
| | | | | | | | Problem: A few failures are not tested. Solution: Test a few failures. (Dominique Pellé, closes vim/vim#7075) https://github.com/vim/vim/commit/afe8cf617013fd8c3f0189f1e1fa7a2a6a8f7511 Cherry-pick a line in Test_argdelete() from patch 8.2.1736.
* Merge pull request #16553 from seandewar/vim-8.2.0878Sean Dewar2022-02-08
|\ | | | | vim-patch:8.2.{0882,1051,1083}: port `reduce()` function
| * vim-patch:8.2.1083: crash when using reduce() on a NULL listSean Dewar2022-01-31
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Crash when using reduce() on a NULL list. Solution: Only access the list when not NULL. https://github.com/vim/vim/commit/fda20c4cc59008264676a6deb6a3095ed0c248e0 CHECK_LIST_MATERIALIZE hasn't been ported yet, but presumably if it is ported it'll use tv_list_first to check for range_list_item, which already checks for NULL, so this should need no extra changes and can be a full port. We didn't actually crash here due to the use of Nvim's tv_list functions checking for NULL, but apply these changes to match Vim better anyway.
| * vim-patch:8.2.1051: crash when changing a list while using reduce() on itSean Dewar2022-01-31
| | | | | | | | | | | | Problem: Crash when changing a list while using reduce() on it. Solution: Lock the list. (closes vim/vim#6330) https://github.com/vim/vim/commit/ca275a05d8b79f6a9101604fdede2373d0dea44e
| * feat(eval): partially port v8.2.0878Sean Dewar2022-01-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: No reduce() function. Solution: Add a reduce() function. (closes vim/vim#5481) https://github.com/vim/vim/commit/85629985b71035608a37ba3bde86968481490d46 Needs CHECK_LIST_MATERIALIZE from v8.2.0751 (and range_list_materialize from 8.2.0149). Move e_reduceempty to funcs.c, as it's only used there. Make it static. Use tv_blob_len, tv_list_len == 0 for empty checks. Replace vim_memset(&funcexe, 0, ...) with FUNCEXE_INIT. Leave li initially undefined (tv_list_first returns NULL if list is NULL). This patch has a memory leak fixed by v8.2.0882.
* | vim-patch:8.1.0711: test files still use function!zeertzjq2022-02-07
|/ | | | | | | | Problem: Test files still use function!. Solution: Remove the exclamation mark. Fix overwriting a function. https://github.com/vim/vim/commit/1e1153600c0377472d62cc553173fe555ddcf5a7 Some of the changes were already applied previously.
* feat(eval/method): partially port v8.1.1953Sean Dewar2021-10-03
| | | | | | | | | | | | | | | | | | | Adds method call support for all functions in the patch, but it cannot be fully ported due to missing tests for: - index(): requires Blobs from v8.1.0735. Note that index() was already added as a method in v8.1.1803; this patch only adds a test. - iconv(): requires v8.1.1136 for test_termcodes.vim. Nvim deprecated inputdialog(), so it no longer has an eval.txt entry. Keep the test for hlexists() commented-out, just like previously. (Nvim always defines the Number group, so it always returns 1 instead) Cannot include both changes to test_syn_attr.vim as Nvim doesn't support ":hi term=..."; however, both test the same ->hlID() syntax anyway.
* vim-patch:8.1.0797: error E898 is used twiceSean Dewar2021-09-15
| | | | | | Problem: Error E898 is used twice. Solution: Rename the Blob error to E899. (closes vim/vim#3853) https://github.com/vim/vim/commit/bf821bccf18453b01d25bee53e4954b02a5dd0e6
* vim-patch:8.1.0793: incorrect error messages for functions that take a BlobSean Dewar2021-09-15
| | | | | | | Problem: Incorrect error messages for functions that now take a Blob argument. Solution: Adjust the error messages. (Dominique Pelle, closes vim/vim#3846) https://github.com/vim/vim/commit/0d17f0d1c09fa6db306336695ba646c21ea24909
* test/old: partial port of patch v8.2.1.0183Jan Edmund Lazo2021-05-24
| | | | Prep for patch v8.2.0511.
* vim-patch:8.2.2738: extending a list with itself can give wrong resultJan Edmund Lazo2021-04-08
| | | | | | | | | Problem: Extending a list with itself can give wrong result. Solution: Remember the item before where the insertion happens and skip to after the already inserted items. (closes vim/vim#1112) https://github.com/vim/vim/commit/dcae51facc4d6de1edd62f0242b40972be841103 Originated from Neovim commit 7ceebacb3fad49ba8321397cf839948caa55b3f5.
* vim-patch:8.2.1822: list test doesn't failJan Edmund Lazo2021-04-08
| | | | | | | | | | | Problem: List test doesn't fail. Solution: Adjust the test for NULL list handling. https://github.com/vim/vim/commit/f57497276bc616d3856eeff9824c080941faa51b Comment out test cases that modify null lists because Neovim throws error messages instead of silently failing. Null lists should be read-only and constant. https://github.com/neovim/neovim/issues/4615
* vim-patch:8.2.0623: typo in test commentJan Edmund Lazo2021-04-08
| | | | | | | | Problem: Typo in test comment. (Christ van Willegen) Solution: Avoid mixing up a data structure with a body part. https://github.com/vim/vim/commit/f7b398c6a9476a2004a42555b731ebf47b866408 Cherry-pick Test_dict_lock_operator() from patch v8.2.0619.
* vim-patch:8.2.1925: list/dict test failsJan Edmund Lazo2020-11-01
| | | | | | | | | | | | | | | | | | | | | | Problem: List/dict test fails. Solution: Correct expected exception. https://github.com/vim/vim/commit/6d967125ad87b1c2a9467357286c3514d5dd1c40 Cherry-pick e_dictkey[] change from patch 8.2.1924. N/A patches for version.c: vim-patch:8.2.1929: MS-Windows: problem loading Perl 5.32 Problem: MS-Windows: problem loading Perl 5.32. Solution: Define NO_THREAD_SAFE_LOCALE. (Ken Takata, closes vim/vim#7234) https://github.com/vim/vim/commit/0289065e41ce3148f929e16a55aa3b161c80576f vim-patch:8.2.1932: compiler warnings when building with Athena GUI Problem: Compiler warnings when building with Athena GUI. Solution: Fix function signatures. https://github.com/vim/vim/commit/963734e316bd17dd7290abcac28b875435d06381
* vim-patch:8.1.1705: using ~{} for a literal dict is not niceJan Edmund Lazo2020-10-07
| | | | | | Problem: Using ~{} for a literal dict is not nice. Solution: Use #{} instead. https://github.com/vim/vim/commit/4c6d90458baae843463f930fdc3fe4a7a2191d27
* vim-patch:8.1.1692: using *{} for literal dict is not backwards compatibleJan Edmund Lazo2020-10-07
| | | | | | | Problem: Using *{} for literal dict is not backwards compatible. (Yasuhiro Matsumoto) Solution: Use ~{} instead. https://github.com/vim/vim/commit/b8be54dcc517c9d57b62409945b7d4b90b6c3071
* vim-patch:8.1.1686: "*" of "*{" is recognized as multipy operatorJan Edmund Lazo2020-10-07
| | | | | | Problem: "*" of "*{" is recognized as multipy operator. (Yasuhiro Matsumoto) Solution: Check for the "{". https://github.com/vim/vim/commit/2898ebb44cee62a70a11b44a97bdad8cc00157b1
* vim-patch:8.1.1683: dictionary with string keys is longer than neededJan Edmund Lazo2020-10-07
| | | | | | | | | | Problem: Dictionary with string keys is longer than needed. Solution: Use *{key: val} for literaly keys. https://github.com/vim/vim/commit/d5abb4c87727eecb71b0e8ffdda60fc9598272f3 Vim's popup,textprop features are N/A. Neovim has not polyfilled their APIs. Skip docs and tests for these features.
* vim-patch:8.1.0888: the a: dict is not immutable as documented (#10819)Abdelhakeem Osama2019-08-21
| | | | | | Problem: The a: dict is not immutable as documented. Solution: Make the a:dict immutable, add a test. (Ozaki Kiichi, Yasuhiro Matsumoto, closes vim/vim#3929) https://github.com/vim/vim/commit/31b816042fca879b11965ddd75287732563ba698
* vim-patch:8.1.0980: extend() insufficiently tested (#9646)Jan Edmund Lazo2019-02-25
| | | | | Problem: extend() insufficiently tested. Solution: Add more tests. (Dominique Pelle, closes vim/vim#4040) https://github.com/vim/vim/commit/58d63a0a2364e1f06a80550f9f5038145b339171
* vim-patch:8.1.0440: remove() with a range not sufficiently tested (#9076)Jan Edmund Lazo2018-10-04
| | | | | Problem: remove() with a range not sufficiently tested. Solution: Add a test. (Dominique Pelle, closes vim/vim#3497) https://github.com/vim/vim/commit/2bfddfc508bcc8dcee108f098eb75844a228fa44
* vim-patch:8.0.1271: still too many old style testsJustin M. Keyes2018-02-12
Problem: Still too many old style tests. Solution: Convert a few more tests to new style. (Yegappan Lakshmanan, closes vim/vim#2290) https://github.com/vim/vim/commit/fb094e14c19337de824d4e6710ca6a2617930ab0