aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2022-07-17 12:13:29 +0800
committerzeertzjq <zeertzjq@outlook.com>2022-07-17 13:51:46 +0800
commitb0bbcfa2392a0b6c58274baf5facadda6cdff10a (patch)
treec3ad4326740c47a6e9619c720bfd94874516079e
parent656a1889ee48f5d48d248fb5b6b88e2a113c090f (diff)
downloadrneovim-b0bbcfa2392a0b6c58274baf5facadda6cdff10a.tar.gz
rneovim-b0bbcfa2392a0b6c58274baf5facadda6cdff10a.tar.bz2
rneovim-b0bbcfa2392a0b6c58274baf5facadda6cdff10a.zip
vim-patch:8.2.2424: some tests are known to cause an error with ASAN
Problem: Some tests are known to cause an error with ASAN. Solution: Add CheckNotAsan. https://github.com/vim/vim/commit/97202d951685fc4d90085da676a90644cbf72571 Move CheckNotMSWindows to the right place. Omit test_memory_usage.vim: a Lua test is used for this file.
-rw-r--r--src/nvim/testdir/check.vim16
-rw-r--r--src/nvim/testdir/test_ex_mode.vim3
-rw-r--r--src/nvim/testdir/test_ins_complete.vim36
3 files changed, 32 insertions, 23 deletions
diff --git a/src/nvim/testdir/check.vim b/src/nvim/testdir/check.vim
index 8f97d959ce..4107df99d6 100644
--- a/src/nvim/testdir/check.vim
+++ b/src/nvim/testdir/check.vim
@@ -55,6 +55,14 @@ func CheckMSWindows()
endif
endfunc
+" Command to check for NOT running on MS-Windows
+command CheckNotMSWindows call CheckNotMSWindows()
+func CheckNotMSWindows()
+ if has('win32')
+ throw 'Skipped: does not work on MS-Windows'
+ endif
+endfunc
+
" Command to check for running on Unix
command CheckUnix call CheckUnix()
func CheckUnix()
@@ -129,14 +137,6 @@ func CheckEnglish()
endif
endfunc
-" Command to check for NOT running on MS-Windows
-command CheckNotMSWindows call CheckNotMSWindows()
-func CheckNotMSWindows()
- if has('win32')
- throw 'Skipped: does not work on MS-Windows'
- endif
-endfunc
-
" Command to check for not running under ASAN
command CheckNotAsan call CheckNotAsan()
func CheckNotAsan()
diff --git a/src/nvim/testdir/test_ex_mode.vim b/src/nvim/testdir/test_ex_mode.vim
index b478332c79..122572f32a 100644
--- a/src/nvim/testdir/test_ex_mode.vim
+++ b/src/nvim/testdir/test_ex_mode.vim
@@ -191,6 +191,9 @@ func Test_ex_mode_errors()
endfunc
func Test_ex_mode_count_overflow()
+ " The multiplication causes an integer overflow
+ CheckNotAsan
+
" this used to cause a crash
let lines =<< trim END
call feedkeys("\<Esc>gQ\<CR>")
diff --git a/src/nvim/testdir/test_ins_complete.vim b/src/nvim/testdir/test_ins_complete.vim
index 4fcf35c00f..532685b9de 100644
--- a/src/nvim/testdir/test_ins_complete.vim
+++ b/src/nvim/testdir/test_ins_complete.vim
@@ -628,27 +628,33 @@ func Test_completefunc_error()
call setline(1, ['', 'abcd', ''])
call assert_fails('exe "normal 2G$a\<C-X>\<C-U>"', 'E565:')
- " Jump to a different window from the complete function
- " TODO: The following test causes an ASAN failure. Once this issue is
- " addressed, enable the following test.
- "func! CompleteFunc(findstart, base)
- " if a:findstart == 1
- " return col('.') - 1
- " endif
- " wincmd p
- " return ['a', 'b']
- "endfunc
- "set completefunc=CompleteFunc
- "new
- "call assert_fails('exe "normal a\<C-X>\<C-U>"', 'E839:')
- "close!
-
set completefunc&
delfunc CompleteFunc
delfunc CompleteFunc2
close!
endfunc
+func Test_completefunc_error_not_asan()
+ " The following test causes an ASAN failure.
+ CheckNotAsan
+
+ " Jump to a different window from the complete function
+ func! CompleteFunc(findstart, base)
+ if a:findstart == 1
+ return col('.') - 1
+ endif
+ wincmd p
+ return ['a', 'b']
+ endfunc
+ set completefunc=CompleteFunc
+ new
+ call assert_fails('exe "normal a\<C-X>\<C-U>"', 'E839:')
+ close!
+
+ set completefunc&
+ delfunc CompleteFunc
+endfunc
+
" Test for returning non-string values from 'completefunc'
func Test_completefunc_invalid_data()
new