Mercurial > vim
changeset 16537:d9f659007109 v8.1.1272
patch 8.1.1272: click on WinBar of other window not tested
commit https://github.com/vim/vim/commit/711f02da6559a3557a9d626d5923c6ea17bd1477
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun May 5 13:14:28 2019 +0200
patch 8.1.1272: click on WinBar of other window not tested
Problem: Click on WinBar of other window not tested.
Solution: Add a test case.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 05 May 2019 13:15:08 +0200 |
parents | 49cd31fd7dd0 |
children | cb7c468eae13 |
files | src/testdir/test_winbar.vim src/version.c |
diffstat | 2 files changed, 46 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/src/testdir/test_winbar.vim +++ b/src/testdir/test_winbar.vim @@ -27,20 +27,24 @@ func Test_add_remove_menu() close endfunc -func Test_click_in_winbar() - new +" Create a WinBar with three buttons. +" Columns of the button edges: +" _Next_ _Cont_ _Close_ +" 2 7 10 15 18 24 +func SetupWinbar() amenu 1.10 WinBar.Next :let g:did_next = 11<CR> amenu 1.20 WinBar.Cont :let g:did_cont = 12<CR> amenu 1.30 WinBar.Close :close<CR> redraw call assert_match('Next Cont Close', Screenline(1)) +endfunc +func Test_click_in_winbar() + new + call SetupWinbar() let save_mouse = &mouse set mouse=a - " Columns of the button edges: - " _Next_ _Cont_ _Close_ - " 2 7 10 15 18 24 let g:did_next = 0 let g:did_cont = 0 for col in [1, 8, 9, 16, 17, 25, 26] @@ -71,3 +75,38 @@ func Test_click_in_winbar() let &mouse = save_mouse endfunc + +func Test_click_in_other_winbar() + new + call SetupWinbar() + let save_mouse = &mouse + set mouse=a + let winid = win_getid() + + split + let [row, col] = win_screenpos(winid) + + " Click on Next button in other window + let g:did_next = 0 + call test_setmouse(row, 5) + call feedkeys("\<LeftMouse>", "xt") + call assert_equal(11, g:did_next) + + " Click on Cont button in other window from Visual mode + let g:did_cont = 0 + call setline(1, 'select XYZ here') + call test_setmouse(row, 12) + call feedkeys("0fXvfZ\<LeftMouse>x", "xt") + call assert_equal(12, g:did_cont) + call assert_equal('select here', getline(1)) + + " Click on Close button in other window + let wincount = winnr('$') + let winid = win_getid() + call test_setmouse(row, 20) + call feedkeys("\<LeftMouse>", "xt") + call assert_equal(wincount - 1, winnr('$')) + call assert_equal(winid, win_getid()) + + bwipe! +endfunc