This is a port of these two patches combined:
vim-patch:8.1.1524: tests are silently skipped
Problem: Tests are silently skipped.
Solution: Throw an exception for skipped tests in more places.
b0f94c1ff3
vim-patch:8.1.1544: some balloon tests don't run when they can
Problem: Some balloon tests don't run when they can.
Solution: Split GUI balloon tests off into a separate file. (Ozaki Kiichi,
closesvim/vim#4538) Change the feature check into a command for
consistency.
b46fecd345
Omit test_lua.vim: previous patches are N/A
Omit test_memory_usage.vim: previous patches are N/A
Omit test_textprop.vim: previous patches are N/A
Omit test_winbar.vim: previous patches are N/A
Omit test_termcodes.vim: mostly N/A
Skip Test_mouse_positon() because it uses test_setmouse().
Cannot throw error in a Test_nocatch_ test.
Use latest `CheckFeature clipboard_working` for test_quotestar.vim
These versions of python has reached End-of-life. getting rid
of python2 support removes a lot of logic to support two
incompatible python versions in the same version.
Problem: More functions can be used as methods.
Solution: Make various functions usable as a method.
3f4f3d8e7e
test_prompt_buffer.vim already had all the changes, except
Test_prompt_garbage_collect().
Partially reverts #11647. Replaces #11662
The old implementation was removed without clear motivation. The "term option"
hackaround added in its place is neither shorter nor simpler.
The new behavior breaks even init.vim that expliticly check against it:
if exists('&termencoding')
set termencoding=utf-8
endif
There was nothing wrong with the 0.4.x behavior. Empty &tenc has
indicated that the &enc value should be used for all the history of
Nvim. Ignoring setting the option is the expected behavior for Vim
versions that does not support the option (and Nvim is such a version)
'tenc' was also irrelevant to the Test_unicode python3 test.
The reason this has to be disabled is that neovim can't change
internal 'encoding'
Problem: Test88 is old style.
Solution: Turn into a new style test. (Yegappan Lakshmanan, closesvim/vim#5347)
213ed008bb
'test_conceal.vim' requires +conceal and +terminal so it is N/A.
Problem: Crash when using Python 3 with "utf32" encoding. (Dominique Pelle)
Solution: Use "utf-8" whenever enc_utf8 is set. (closesvim/vim#5423)
556684ff71
Problem: Error for Python exception does not show useful info.
Solution: Show the last line instead of the first one. (Ben Jackson,
closesvim/vim#4381)
7f3a28490a
Problem: Preferred cursor column not set in interfaces.
Solution: Set w_set_curswant when setting the cursor. (David Hotham,
closesvim/vim#3060)
53901442f3
Problem: E315 ml_get error when using Python and hidden buffer.
Solution: Make sure the cursor position is valid. (Ben Jackson,
closesvim/vim#4153, closesvim/vim#4154)
63dbfd33c1
Problem: Python cannot handle function name of script-local function.
Solution: Use <SNR> instead of the special byte code. (Ozaki Kiichi, closes
vim/vim#3681)
9123c0b31a
Problem: May get ml_get error when :pydo deletes lines or switches to
another buffer. (Nikolai Pavlov, issue vim/vim#1421)
Solution: Check the buffer and line every time.
a58883b4ea
(We only include the tests, the Vim code changes are N/A for Nvim.)