Problem: Lines put in non-current window are not displayed. (Marius
Gedminas)
Solution: Don't increment the topline when inserting just above it.
(closesvim/vim#12212)
e7f05a8780
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: ":drop fname" may change the last used tab page.
Solution: Restore the last used tab page when :drop has changed it.
(closesvim/vim#12087)
8281a16efc
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Profile completion test sometimes fails.
Solution: Delete the .res file before running tests.
7e0be3ea21
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Deferred functions invoked in unexpected order when using :qa and
autocommands.
Solution: Call deferred functions for the current funccal before using the
stack. (closesvim/vim#12278)
1be4b81bfb
Problem: Jenkinsfiles are not recognized as groovy.
Solution: Add a pattern for Jenkinsfiles. (closesvim/vim#12236)
142ffb024d
Co-authored-by: dundargoc <gocdundar@gmail.com>
Problem: Reporting swap file when windows are split.
Solution: Close extra windows after running a test.
e5eae82bb7
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Tests call GetSwapFileList() before it is defined.
Solution: Move the call to after defining the function. (Christopher
Plewright)
6572a90287
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Tests may get stuck in buffer with swap file.
Solution: Bail out when bwipe! doesn't get another buffer.
fa2533c8bb
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Stray warnings for existing swap files.
Solution: Wipe out the buffer until it has no name and no swap file.
23526d2539
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Test for catch after interrupt is flaky on MS-Windows.
Solution: Mark the test as flaky.
72b5b0d51a
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Test for swapfilelist() fails on MS-Windows.
Solution: Only check the tail of the path. Mark a test as flaky.
6cf3151f0e
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: There is no way to get a list of swap file names.
Solution: Add the swapfilelist() function. Use it in the test script to
clean up. Remove deleting individual swap files.
c216a7a21a
vim-patch:9.0.1005: a failed test may leave a swap file behind
Problem: A failed test may leave a swap file behind.
Solution: Delete the swap file to avoid another test to fail. Use another
file name.
d0f8d39d20
Cherry-pick test_window_cmd.vim changes from patch 8.2.1593.
Remove FUNC_ATTR_UNUSED from eval functions as fptr is always unused.
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: When a test gets stuck it just hangs forever.
Solution: Set a timeout of 30 seconds.
3bcd0ddc2d
Note: This doesn't cause test_timers.vim failures in Nvim because there
is a SetUp() function that calls timer_stopall().
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Elapsed time since testing started is not visible.
Solution: Show the elapsed time while running tests.
b9093d5009
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: When a test is slow and CI times out there is no time info.
Solution: Add the elapsed time to the "Executing" message.
daaa3d9965
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Terminal test sometimes hangs.
Solution: Add a bit more information to the test output. (issue vim/vim#11179)
a22c56a59a
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: MS-Windows: "%T" time format does not appear to work.
Solution: Use "%H:%M:%S" instead.
5fbbec180b
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: A failing flaky test doesn't mention the time.
Solution: Add the time for debugging. Improve error message.
06d32a0c17
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Recursively calling :defer function if it does :qa in a compiled
function.
Solution: Clear the defer entry before calling the function. (closesvim/vim#12271)
a1f2b5ddc6
Problem: Recursively calling :defer function if it does :qa.
Solution: Clear the defer entry before calling the function. (closesvim/vim#12266)
42994bf678
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Crash when using "!!" without a previous shell command.
Solution: Check "prevcmd" is not NULL. (closesvim/vim#11487)
6600447c7b
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: ":!" doesn't do anything but does update the previous command.
Solution: Do not have ":!" change the previous command. (Martin Tournoij,
closesvim/vim#11372)
8107a2a8af
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Ruler not drawn correctly when using 'rulerformat'.
Solution: Adjust formatting depending on whether the ruler is drawn in the
statusline or the command line. (Sean Dewar, closesvim/vim#12246)
fc8a601c32
This issue was made apparent after neovim/neovim@0f1e2b6, as `showmode()` calls
`win_redr_ruler()` with `curwin` now if it's floating, rather than the last
window if there's no statusline (which usually already shares its right side
with that of the editor).
Co-authored-by: Sean Dewar <seandewar@users.noreply.github.com>
Problem: The :defer command does not check the function argument count and
types.
Solution: Check the function arguments when adding a deferred function.
169003289f
Cherry-pick check_internal_func() from Vim, but use EvalFuncDef pointer
as first argument.
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Deferred functions not invoked when partial func exits.
Solution: Create a funccall_T when calling a :def function.
9667b2c888
The remove_funccal() function is currently unused, but it will be used
in patch 9.0.0618.
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Invalid memory access with bad 'statusline' value.
Solution: Avoid going over the NUL at the end.
7b17eb4b06
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Invalid memory access with recursive substitute expression.
Solution: Check the return value of vim_regsub().
3ac1d97a1d
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Invalid memory access in substitute with function that goes to
another file.
Solution: Check for text locked in CTRL-W gf.
cc762a48d4
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: C++ 20 modules are not recognized.
Solution: Add patterns to recognize C++ 20 modules as "cpp". (Ben Jackson,
closesvim/vim#12261)
732d69e191
Co-authored-by: Ben Jackson <puremourning@gmail.com>
Problem: Code for making 'shortmess' temporarily empty is repeated.
Solution: Add functions for making 'shortmess' empty and restoring it.
(Christian Brabandt, closesvim/vim#11709)
9aee8ec400
Co-authored-by: Christian Brabandt <cb@256bit.org>
Problem: Only created files can be cleaned up with one call.
Solution: Add flags to mkdir() to delete with a deferred function.
Expand the writefile() name to a full path to handle changing
directory.
6f14da15ac
vim-patch:8.2.3742: dec mouse test fails without gnome terminfo entry
Problem: Dec mouse test fails without gnome terminfo entry.
Solution: Check if there is a gnome entry. Also fix 'acd' test on
MS-Windows. (Dominique Pellé, closesvim/vim#9282)
f589fd3e10
Cherry-pick test_autochdir.vim changes from patch 9.0.0313.
Cherry-pick test_autocmd.vim changes from patch 9.0.0323.
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: :defer not tested with exceptions and ":qa!".
Solution: Test :defer works when exceptions are thrown and when ":qa!" is
used. Invoke the deferred calls on exit.
58779858fb
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Cannot use a partial with :defer.
Solution: Add the partial arguments before the other arguments. Disallow
using a dictionary.
86d87256c4
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Cleaning up after writefile() is a hassle.
Solution: Add the 'D' flag to defer deleting the written file. Very useful
in tests.
806a273f3c
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Cleaning up afterwards can make a function messy.
Solution: Add the :defer command.
1d84f7608f
Omit EX_EXPR_ARG: Vim9 script only.
Make :def throw E319 to avoid confusing behavior.
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Test fails because of using Vim9 syntax in legacy function.
Solution: Add "call".
4f16e9de98
Add test_nested_function.vim changes from patches 8.{0.0141,2.1432}.
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Confusing error for using a variable as a function.
Solution: If a function is not found but there is a variable, give a more
useful error. (issue vim/vim#9310)
2ef9156b42
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Crash when using a null function reference. (Naohiro Ono)
Solution: Check for an invalid function name. (closesvim/vim#8367)
22db0d549f
Co-authored-by: Bram Moolenaar <Bram@vim.org>