aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/testdir
Commit message (Collapse)AuthorAge
...
| * | 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.2.4326: "o" and "O" copying comment not sufficiently testedzeertzjq2022-02-08
| | | | | | | | | | | | | | | | | | | | | | | | Problem: "o" and "O" copying comment not sufficiently tested. Solution: Add a test case. (closes vim/vim#9718) https://github.com/vim/vim/commit/51ab7c7d0da08aac796acff22a6c075dac579e76 Fix a mistake when porting Vim patch 8.2.3934
* | | test: add Lua functional tests for Ex modezeertzjq2022-02-08
| |/ |/|
* | chore: fix typos (#17250)dundargoc2022-02-08
| | | | | | | | | | | | Co-authored-by: zeertzjq <zeertzjq@outlook.com> Co-authored-by: Dani Dickstein <daniel.dickstein@gmail.com> Co-authored-by: Axel Dahlberg <git@valleymnt.com>
* | vim-patch:8.2.2813: cannot grep using fuzzy matchingSean Dewar2022-02-07
| | | | | | | | | | | | Problem: Cannot grep using fuzzy matching. Solution: Add the "f" flag to :vimgrep. (Yegappan Lakshmanan, closes vim/vim#8152) https://github.com/vim/vim/commit/bb01a1ef3a093cdb36877ba73474719c531dc8cb
* | vim-patch:8.2.2280: fuzzy matching doesn't give access to the scoresSean Dewar2022-02-07
| | | | | | | | | | | | | | | | | | | | Problem: Fuzzy matching doesn't give access to the scores. Solution: Return the scores with a third list. (Yegappan Lakshmanan, closes vim/vim#7596) https://github.com/vim/vim/commit/9d19e4f4ba55f8bef18d4991abdf740ff6472dba Remove seemingly useless NULL checks. assert that removing the li one wasn't dumb.
* | vim-patch:8.2.1921: fuzzy matching does not recognize path separatorsSean Dewar2022-02-07
| | | | | | | | | | | | | | Problem: Fuzzy matching does not recognize path separators. Solution: Add a bonus for slash and backslash. (Yegappan Lakshmanan, closes vim/vim#7225) https://github.com/vim/vim/commit/dcdd42a8ccb9bafd857735d694b074269f337333
* | vim-patch:8.2.1893: fuzzy matching does not support multiple wordsSean Dewar2022-02-07
| | | | | | | | | | | | | | Problem: Fuzzy matching does not support multiple words. Solution: Add support for matching white space separated words. (Yegappan Lakshmanan, closes vim/vim#7163) https://github.com/vim/vim/commit/8ded5b647aa4b3338da721b343e0bce0f86655f6
* | vim-patch:8.2.1872: matchfuzzy() does not prefer sequential matchesSean Dewar2022-02-07
| | | | | | | | | | | | | | Problem: Matchfuzzy() does not prefer sequential matches. Solution: Give sequential matches a higher bonus. (Christian Brabandt, closes vim/vim#7140) https://github.com/vim/vim/commit/e9f9f16387554e5b34ba42ce00c42c28dd66af58
* | vim-patch:8.2.1726: fuzzy matching only works on stringsSean Dewar2022-02-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Fuzzy matching only works on strings. Solution: Support passing a dict. Add matchfuzzypos() to also get the match positions. (Yegappan Lakshmanan, closes vim/vim#6947) https://github.com/vim/vim/commit/4f73b8e9cc83f647b34002554a8bdf9abec0a82f Also remove some N/A and seemingly useless NULL checks -- Nvim allocs can't return NULL. I'm not sure why the retmatchpos stuff in match_fuzzy checks for NULL too, given that Vim checks for NULL alloc in do_fuzzymatch; assert that the li stuff is not NULL as that's the one check I'm ever-so-slightly unsure about. Adjust tests. Note that the text_cb tests actually throw E6000 in Nvim, but we also can't assert that error due to v8.2.1183 not being ported yet.
* | vim-patch:8.2.1665: cannot do fuzzy string matchingSean Dewar2022-02-07
| | | | | | | | | | | | | | | | | | | | | | Problem: Cannot do fuzzy string matching. Solution: Add matchfuzzy(). (Yegappan Lakshmanan, closes vim/vim#6932) https://github.com/vim/vim/commit/635414dd2f3ae7d4d972d79b806348a6516cb91a Adjust Test_matchfuzzy's 2nd assert to expect the last error thrown, as v8.2.1183 hasn't been ported yet (to be honest, the error message is kinda weird if the 2nd argument is not convertible to string). We can still port this fully as porting v8.2.1183 would require removing this change to pass CI.
* | vim-patch:8.2.3939: MS-Windows: fnamemodify('', ':p') does not workzeertzjq2022-02-07
| | | | | | | | | | | | | | Problem: MS-Windows: fnamemodify('', ':p') does not work. Solution: Do not consider an empty string a full path. (Yegappan Lakshmanan, closes vim/vim#9428, closes vim/vim#9427) https://github.com/vim/vim/commit/5a664fe57fe7ba65a771bc95ef1c205e4db193b7
* | vim-patch:8.2.3824: no ASAN support for MSVCzeertzjq2022-02-07
| | | | | | | | | | | | | | Problem: No ASAN support for MSVC. Solution: Add ASAN support and fix a coupld of uncovered problems. (Yegappan Lakshmanan, closes vim/vim#9357) https://github.com/vim/vim/commit/6df0f2759d12ec0bc999b2963ecea4387a2bc516
* | vim-patch:8.2.0942: expanding to local dir after homedir keeps "~/"zeertzjq2022-02-07
| | | | | | | | | | | | | | Problem: Expanding to local dir after homedir keeps "~/". Solution: Adjust modify_fname(). (Christian Brabandt, closes vim/vim#6205, closes vim/vim#5979) https://github.com/vim/vim/commit/0e390f40e944036fb558a63b91238cfda128d95f
* | vim-patch:8.2.0215: wrong file name shorteningzeertzjq2022-02-07
| | | | | | | | | | | | | | Problem: Wrong file name shortening. (Ingo Karkat) Solution: Better check for path separator. (Yasuhiro Matsumoto, closes vim/vim#5583, closes vim/vim#5584) https://github.com/vim/vim/commit/a78e9c61a0ded9c5302bc77e889aa1b3d3467f61
* | vim-patch:8.2.0208: fnamemodify() does not apply ":~" when followed by ":."zeertzjq2022-02-07
| | | | | | | | | | | | | | Problem: Fnamemodify() does not apply ":~" when followed by ":.". Solution: Don't let a failing ":." cause the ":~" to be skipped. (Yasuhiro Matsumoto, closes vim/vim#5577) https://github.com/vim/vim/commit/d816cd94d87afb73c505bf1e5cd5e07522482113
* | 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.
* | vim-patch:7.4.1228zeertzjq2022-02-07
| | | | | | | | | | | | | | | | | | | | Problem: copy() and deepcopy() fail with special variables. (Nikolai Pavlov) Solution: Make it work. Add a test. Closes vim/vim#614. https://github.com/vim/vim/commit/155500077c80cdb5d9c63996000c011b66a676bf Code is N/A. This only ports the tests. Comment out tests involving v:none as Nvim has removed it.
* | vim-patch:7.4.1181zeertzjq2022-02-07
| | | | | | | | | | | | | | | | Problem: free_tv() can't handle special variables. (Damien) Solution: Add the variable type. https://github.com/vim/vim/commit/6650a694547eb744afa060ec62dd8270e99db9f2 Code is N/A. This only ports the tests.
* | vim-patch:7.4.1178zeertzjq2022-02-07
| | | | | | | | | | | | | | | | | | Problem: empty() doesn't work for the new special variables. Solution: Make empty() work. (Damien) https://github.com/vim/vim/commit/767d8c1a1ae762ecf47297c168b8c23caf05d30a Code is N/A. This only ports the tests. Comment out tests involving v:none as Nvim has removed it.
* | vim-patch:7.4.1173zeertzjq2022-02-07
| | | | | | | | | | | | | | | | Problem: No test for new behavior of v:true et al. Solution: Add a test. https://github.com/vim/vim/commit/65591001e405cbaaf9772c9375d0bb6049cf9a3a Comment out tests involving v:none as Nvim has removed it.
* | vim-patch:7.4.1167zeertzjq2022-02-07
| | | | | | | | | | | | | | | | Problem: No tests for "is" and "isnot" with the new variables. Solution: Add tests. https://github.com/vim/vim/commit/04369229657f182d35b471eb8b38f273a4d9ef65 Comment out tests involving v:none as Nvim has removed it.
* | vim-patch:7.4.1164zeertzjq2022-02-07
| | | | | | | | | | | | | | | | | | | | Problem: No tests for comparing special variables. Error in jsondecode() not reported. test_json does not work Japanse system. Solution: Set scriptencoding. (Ken Takata) Add a few more tests. Add error. https://github.com/vim/vim/commit/6039c7f05376f0e470cf62bf2757e653aea357f3 Code is N/A. This only ports the tests. Comment out tests involving v:none as Nvim has removed it.
* | vim-patch:7.4.1163zeertzjq2022-02-07
| | | | | | | | | | | | | | | | | | | | Problem: Expressions "0 + v:true" and "'' . v:true" cause an error. Solution: Return something sensible when using a special variable as a number or as a string. (suggested by Damien) https://github.com/vim/vim/commit/17a13437c9414a8693369a97f3be2fc8ad48c12e Code is N/A. This only ports the tests. Comment out tests involving v:none as Nvim has removed it.
* | Merge pull request #17305 from zeertzjq/vim-8.2.1741zeertzjq2022-02-07
|\ \ | | | | | | vim-patch:8.2.1741: pathshorten() only supports using one character
| * | vim-patch:8.2.1741: pathshorten() only supports using one characterzeertzjq2022-02-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: pathshorten() only supports using one character. Solution: Add an argument to control the length. (closes vim/vim#7006) https://github.com/vim/vim/commit/6a33ef0deb5c75c003a9f3bd1c57f3ca5e77327e Cherry-pick a line in test from patch 8.2.0634. Use Nvim's config paths in docs. shorten_dir() returning a pointer looks a bit confusing here, as it is actually the same pointer passed to it, and it doesn't really reduce much code, so change it back to void. Assigning rettv->vval.v_string = NULL is not needed if a pointer is within 64 bits. While this is usually the case, I'm not sure if it can be taken for granted.
* | | vim-patch:8.2.4306: no test for fixed perl filetype checkChristian Clason2022-02-06
| | | | | | | | | | | | | | | | | | Problem: No test for fixed perl filetype check. Solution: Add a test. Sort test functions. https://github.com/vim/vim/commit/500761b1cf666f030009d2dcdacfdce28f68f43d
* | | vim-patch:8.2.4305: tex filetype detection failsChristian Clason2022-02-06
|/ / | | | | | | | | | | Problem: Tex filetype detection fails. Solution: Check value to be positive. (closes vim/vim#9704) https://github.com/vim/vim/commit/e5b7897585eccec84431d8b23df5cde2e283828c
* | Merge pull request #16862 from seandewar/vim-8.2.2658Sean Dewar2022-02-06
|\ \ | | | | | | vim-patch:8.2.{2658,2661,2736}: for loop over strings
| * | feat(eval): port emsg from v8.2.3284Sean Dewar2022-02-05
| | | | | | | | | | | | https://github.com/vim/vim/commit/80d7395dcfe96158428da6bb3d28a6eee1244e28
| * | vim-patch:8.2.2658: :for cannot loop over a stringSean Dewar2022-02-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: :for cannot loop over a string. Solution: Accept a string argument and iterate over its characters. https://github.com/vim/vim/commit/74e54fcb447e5db32f9c2df34c0554bbecdccca2 v8.2.2659 is already ported. N/A patches for version.c: vim-patch:8.2.2736: Vim9: for loop over string is a bit slow Problem: Vim9: for loop over string is a bit slow. Solution: Avoid using strlen(). https://github.com/vim/vim/commit/175a41c13f3e27e30c662f2f418c5a347dbc645d
* | | vim-patch:8.2.2363: curpos() does not accept a string argument as beforezeertzjq2022-02-06
| | | | | | | | | | | | | | | | | | | | | Problem: curpos() does not accept a string argument as before. solution: Make a string argument work again. (Yegappan Lakshmanan, closes vim/vim#7690 https://github.com/vim/vim/commit/9ebcf231bdccc1673cc92b20f5190fc577ad29d0
* | | vim-patch:8.2.2324: not easy to get mark en cursor posotion by character countzeertzjq2022-02-06
| | | | | | | | | | | | | | | | | | | | | Problem: Not easy to get mark en cursor posotion by character count. Solution: Add functions that use character index. (Yegappan Lakshmanan, closes vim/vim#7648) https://github.com/vim/vim/commit/6f02b00bb0958f70bc15534e115b4c6dadff0e06
* | | vim-patch:8.2.1727: a popup created with "cursorline" will ignore "firstline"zeertzjq2022-02-06
|/ / | | | | | | | | | | | | | | | | | | | | Problem: A popup created with "cursorline" will ignore "firstline". Solution: When both "cursorline" and "firstline" are present put the cursor on "firstline". (closes vim/vim#7000) Add the "winid" argument to getcurpos(). https://github.com/vim/vim/commit/99ca9c4868bb1669706b9e3de9a9218bd11cc459 Skip popup window related code. Cherry-pick all of Test_getcurpos_setpos() from patch 8.2.0610.
* | Merge pull request #17020 from seandewar/vim-8.1.2342Sean Dewar2022-02-05
|\ \ | | | | | | vim-patch:8.1.{2342,2343,2356,2357},8.2.0233: `rand` and `srand`
| * | vim-patch:8.2.0233: crash when using garbagecollect() in between rand()Sean Dewar2022-02-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Crash when using garbagecollect() in between rand(). Solution: Redesign the rand() and srand() implementation. (Yasuhiro Matsumoto, closes vim/vim#5587, closes vim/vim#5588) https://github.com/vim/vim/commit/4f645c54efe33d7a11e314676e503118761f08a7 Omit test_srand_seed. Unmacroify SHUFFLE_XOSHIRO128STARSTAR and SPLITMIX32 while we're at it (leave ROTL alone as it's fairly innocent).
| * | vim-patch:8.1.2357: no test with wrong argument for rand()Sean Dewar2022-02-05
| | | | | | | | | | | | | | | | | | Problem: No test with wrong argument for rand(). Solution: Add a test case. https://github.com/vim/vim/commit/68e9e5f7fccb8038cf0ca5b5d95c85a923152f46
| * | vim-patch:8.1.2356: rand() does not use the best algorithmSean Dewar2022-02-05
| | | | | | | | | | | | | | | | | | | | | Problem: rand() does not use the best algorithm. Solution: use xoshiro128** instead of xorshift. (Kaito Udagawa, closes vim/vim#5279) https://github.com/vim/vim/commit/f8c1f9200c4b50969a8191a4fe0b0d09edb38979
| * | vim-patch:8.1.2343: using time() for srand() is not very randomSean Dewar2022-02-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Using time() for srand() is not very random. Solution: use /dev/urandom if available https://github.com/vim/vim/commit/07e4a197953d12902fb97beb48830a5323a52280 Use os_open and os_close. time_settime is N/A, so some parts of the test are disabled. There's maybe a very, very, very, very small chance the /dev/urandom test fails, but it shouldn't matter. :P
| * | vim-patch:8.1.2342: random number generator in Vim script is slowSean Dewar2022-02-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Random number generator in Vim script is slow. Solution: Add rand() and srand(). (Yasuhiro Matsumoto, closes vim/vim#1277) https://github.com/vim/vim/commit/06b0b4bc27077013e9b4b48fd1d9b33e543ccf99 Add missing method call usage to builtin.txt. vim_time and test_settime is N/A. Add a modeline to test_random.vim. Use typval_T* over listitem_T* vars so we don't need to use TV_LIST_ITEM_TV all over the place... Remove NULL list checks (tv_list_len covers this).
* | | vim-patch:8.2.4298: divide by zero with huge tabstop valuezeertzjq2022-02-05
|/ / | | | | | | | | | | Problem: Divide by zero with huge tabstop value. Solution: Reject tabstop value that overflows to zero. https://github.com/vim/vim/commit/fc88df42f1ae64bcc4d6cbc0fbd3445f8c59afdf
* | test(old): add test_expand.vimzeertzjq2022-02-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes expand_spec.lua and copies test_expand.vim from Vim at version v8.1.2278. The rest of patch 8.1.2278 were already applied in #15952, so this marks that patch as fully ported. vim-patch:8.1.2278: using "cd" with "exe" may fail Problem: Using "cd" with "exe" may fail. Solution: Use chdir() instead. https://github.com/vim/vim/commit/3503d7c94a6c8c2a5ca1665d648d0cb81afcc863
* | Merge pull request #17288 from zeertzjq/vim-8.2.1128zeertzjq2022-02-04
|\ \ | | | | | | vim-patch:8.2.1128: the write message mentions characters, but it's bytes
| * | vim-patch:8.2.1128: the write message mentions characters, but it's byteszeertzjq2022-02-04
| | | | | | | | | | | | | | | | | | Problem: The write message mentions characters, but it's actually bytes. Solution: Change "C" to "B" and "characters" to "bytes". https://github.com/vim/vim/commit/3f40ce78f5c178d15871bd784ed878c78f0b8a44
* | | vim-patch:8.1.2133: some tests fail when run as rootzeertzjq2022-02-04
|/ / | | | | | | | | | | | | | | Problem: Some tests fail when run as root. Solution: Add CheckNotRoot and use it. (James McCoy, closes vim/vim#5020) https://github.com/vim/vim/commit/07282f01da06c158bab4787adc89ec15d7eeb202 Skip test_terminal.vim and test_viminfo.vim: N/A
* | vim-patch:8.2.3583: the "gd" and "gD" commands do not update search statszeertzjq2022-02-04
| | | | | | | | | | | | | | Problem: The "gd" and "gD" commands do not update search stats. (Gary Johnson) Solution: Clear search stats. https://github.com/vim/vim/commit/0c71114aede81a209b7efc126b4bf19f11d58955
* | test(old): fix test order in test_search_stat.vimzeertzjq2022-02-04
| | | | | | | | Also avoid unnecessary divergences from upstream and add a modeline.
* | Merge pull request #17272 from zeertzjq/vim-8.1.0846zeertzjq2022-02-04
|\ \ | | | | | | vim-patch:8.1.{0846,0878,0884,2358},8.2.{0305,0352,0687,3797}