Mercurial > vim
diff src/testdir/test_swap.vim @ 19487:0aba9ef12488 v8.2.0301
patch 8.2.0301: insufficient testing for exception handling
Commit: https://github.com/vim/vim/commit/b654103ad1e379348616f354272db86804ab4bdb
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Feb 22 21:21:27 2020 +0100
patch 8.2.0301: insufficient testing for exception handling
Problem: Insufficient testing for exception handling and the "attention"
prompt.
Solution: Add test cases. (Yegappan Lakshmanan, closes #5681)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 22 Feb 2020 21:30:04 +0100 |
parents | 8f8a5a15d00a |
children | 42e4083429a7 |
line wrap: on
line diff
--- a/src/testdir/test_swap.vim +++ b/src/testdir/test_swap.vim @@ -1,6 +1,7 @@ " Tests for the swap feature source shared.vim +source term_util.vim func s:swapname() return trim(execute('swapname')) @@ -349,4 +350,29 @@ func Test_swap_split_win() augroup! test_swap_splitwin endfunc +" Test for selecting 'q' in the attention prompt +func Test_swap_prompt_splitwin() + if !CanRunVimInTerminal() + throw 'Skipped: cannot run vim in terminal' + endif + call writefile(['foo bar'], 'Xfile1') + edit Xfile1 + let buf = RunVimInTerminal('', {'rows': 20}) + call term_sendkeys(buf, ":set nomore\n") + call term_sendkeys(buf, ":set noruler\n") + call term_sendkeys(buf, ":split Xfile1\n") + call term_wait(buf) + call WaitForAssert({-> assert_match('^\[O\]pen Read-Only, (E)dit anyway, (R)ecover, (Q)uit, (A)bort: $', term_getline(buf, 20))}) + call term_sendkeys(buf, "q") + call term_wait(buf) + call term_sendkeys(buf, ":") + call WaitForAssert({-> assert_match('^:$', term_getline(buf, 20))}) + call term_sendkeys(buf, "echomsg winnr('$')\<CR>") + call term_wait(buf) + call WaitForAssert({-> assert_match('^1$', term_getline(buf, 20))}) + call StopVimInTerminal(buf) + %bwipe! + call delete('Xfile1') +endfunc + " vim: shiftwidth=2 sts=2 expandtab