Problem: Using time() for srand() is not very random.
Solution: use /dev/urandom if available
07e4a19795
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
Problem: Random number generator in Vim script is slow.
Solution: Add rand() and srand(). (Yasuhiro Matsumoto, closesvim/vim#1277)
06b0b4bc27
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).
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.
3503d7c94a
Problem: Some tests fail when run as root.
Solution: Add CheckNotRoot and use it. (James McCoy, closesvim/vim#5020)
07282f01da
Skip test_terminal.vim and test_viminfo.vim: N/A
Problem: FreeBSD: test for sourcing utf-8 is skipped.
Solution: Run the matchadd_conceal test separately to avoid that setting
'term' to "ansi" causes problems for other tests. (Ozaki Kiichi,
closesvim/vim#5721)
36ddf93831
Problem: Tests fail on Cirrus CI for FreeBSD.
Solution: Fix a test and skip some. (Christian Brabandt, closesvim/vim#5281)
9134f1ecd4
Skip test_normal.vim: already applied in #11483.
Problem: Not easy to recognize the system Vim runs on.
Solution: Add more items to the features list. (Ozaki Kiichi, closesvim/vim#3855)
39536dd557
Some doc changes have already been applied. Some others are N/A.
"moon" was removed in patch 8.2.0427 so I did not add it.
We have to be sure that the bugs fixed in the previous patches also apply to
nvim_win_call.
Checking v8.1.2124 and v8.2.4026 is especially important as these patches were
only applied to win_execute, but nvim_win_call is also affected by the same
bugs. A lot of win_execute's logic can be shared with nvim_win_call, so factor
it out into a common macro to reduce the possibility of this happening again.
Problem: ml_get error with :doautoall and Visual area. (Sean Dewar)
Solution: Disable Visual mode while executing autocommands.
cb1956d6f2
This should also fix#16937 for nvim_buf_call, so test for it.
Problem: ml_get error when win_execute redraws with Visual selection.
Solution: Disable Visual area temporarily. (closesvim/vim#9479)
18f4740f04
{switch_to/restore}_win_for_buf is N/A (marked as such in v8.0.0860; currently
only used in Vim's if_py).
Add a modeline to test_execute_func.vim.
Problem: Using a variable for the return value is not needed.
Solution: Return the value directly. (closesvim/vim#9687)
73257149d7
Also move down variable declarations in changedir_func().
vim_chdirfile() doesn't need change.
Problem: Unnecessary check for NULL pointer.
Solution: Remove the check. (closesvim/vim#9434)
f38aad85cf
Reorder the two if branches to match upstream.
Problem: When using feedkeys() abbreviations may be blocked.
Solution: Reset tb_no_abbr_cnt when running out of characters.
(closesvim/vim#9448)
b37a65e4bf
Problem: Basic and form filetype detection is incomplete.
Solution: Add a separate function for .frm files. (Doug Kearns, closesvim/vim#9675)
c570e9cf68