From af2b078258c029cb45eade52f229d9a31b7a7393 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Mon, 22 Aug 2022 09:28:32 +0800 Subject: vim-patch:8.2.2030: some tests fail on Mac Problem: Some tests fail on Mac. Solution: Avoid Mac test failures. Add additional test for wildmenu. (Yegappan Lakshmanan, closes vim/vim#7341) https://github.com/vim/vim/commit/4b2ce1297e6e991bf6a674f9465d26d28e648de7 --- src/nvim/testdir/runtest.vim | 7 +++++++ src/nvim/testdir/test_cmdline.vim | 30 ++++++++++++++++++++++++++++++ src/nvim/testdir/test_options.vim | 8 +++++++- 3 files changed, 44 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/nvim/testdir/runtest.vim b/src/nvim/testdir/runtest.vim index fcd3d5724c..206f335751 100644 --- a/src/nvim/testdir/runtest.vim +++ b/src/nvim/testdir/runtest.vim @@ -114,6 +114,13 @@ if has('win32') let $PROMPT = '$P$G' endif +if has('mac') + " In MacOS, when starting a shell in a terminal, a bash deprecation warning + " message is displayed. This breaks the terminal test. Disable the warning + " message. + let $BASH_SILENCE_DEPRECATION_WARNING = 1 +endif + " Prepare for calling test_garbagecollect_now(). let v:testing = 1 diff --git a/src/nvim/testdir/test_cmdline.vim b/src/nvim/testdir/test_cmdline.vim index 35886d42c5..72d2dc9cbb 100644 --- a/src/nvim/testdir/test_cmdline.vim +++ b/src/nvim/testdir/test_cmdline.vim @@ -1809,6 +1809,36 @@ func Test_read_shellcmd() endif endfunc +" Test for going up and down the directory tree using 'wildmenu' +func Test_wildmenu_dirstack() + CheckUnix + %bw! + call mkdir('Xdir1/dir2/dir3', 'p') + call writefile([], 'Xdir1/file1_1.txt') + call writefile([], 'Xdir1/file1_2.txt') + call writefile([], 'Xdir1/dir2/file2_1.txt') + call writefile([], 'Xdir1/dir2/file2_2.txt') + call writefile([], 'Xdir1/dir2/dir3/file3_1.txt') + call writefile([], 'Xdir1/dir2/dir3/file3_2.txt') + cd Xdir1/dir2/dir3 + set wildmenu + + call feedkeys(":e \\\"\", 'xt') + call assert_equal('"e file3_1.txt', @:) + call feedkeys(":e \\\\"\", 'xt') + call assert_equal('"e ../dir3/', @:) + call feedkeys(":e \\\\\"\", 'xt') + call assert_equal('"e ../../dir2/', @:) + call feedkeys(":e \\\\\\"\", 'xt') + call assert_equal('"e ../../dir2/dir3/', @:) + call feedkeys(":e \\\\\\\"\", 'xt') + call assert_equal('"e ../../dir2/dir3/file3_1.txt', @:) + + cd - + call delete('Xdir1', 'rf') + set wildmenu& +endfunc + " Test for recalling newer or older cmdline from history with , , " , , , , , or . func Test_recalling_cmdline() diff --git a/src/nvim/testdir/test_options.vim b/src/nvim/testdir/test_options.vim index fdfc1c0f89..e9a62d00a9 100644 --- a/src/nvim/testdir/test_options.vim +++ b/src/nvim/testdir/test_options.vim @@ -774,7 +774,13 @@ func Test_shell() CheckUnix let save_shell = &shell set shell= - call assert_fails('shell', 'E91:') + let caught_e91 = 0 + try + shell + catch /E91:/ + let caught_e91 = 1 + endtry + call assert_equal(1, caught_e91) let &shell = save_shell endfunc -- cgit