Mercurial > vim
view src/testdir/test_close_count.vim @ 22149:49b3a95adf04 v8.2.1624
patch 8.2.1624: Vim9: cannot pass "true" to split(), str2nr() and strchars()
Commit: https://github.com/vim/vim/commit/3986b94b090ea258109630008611230a599999ab
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Sep 6 16:09:04 2020 +0200
patch 8.2.1624: Vim9: cannot pass "true" to split(), str2nr() and strchars()
Problem: Vim9: cannot pass "true" to split(), str2nr() and strchars().
Solution: Use tv_get_bool_chk(). (closes https://github.com/vim/vim/issues/6884, closes https://github.com/vim/vim/issues/6885, closes https://github.com/vim/vim/issues/6886)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 06 Sep 2020 16:15:03 +0200 |
parents | 08940efa6b4e |
children |
line wrap: on
line source
" Tests for :[count]close! command func Test_close_count() enew! | only let wids = [win_getid()] for i in range(5) new call add(wids, win_getid()) endfor 4wincmd w close! let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[5], wids[4], wids[3], wids[1], wids[0]], ids) 1close! let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[4], wids[3], wids[1], wids[0]], ids) $close! let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[4], wids[3], wids[1]], ids) 1wincmd w 2close! let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[4], wids[1]], ids) 1wincmd w new call add(wids, win_getid()) new call add(wids, win_getid()) 2wincmd w -1close! let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[6], wids[4], wids[1]], ids) 2wincmd w +1close! let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[6], wids[4]], ids) only! endfunc " Tests for :[count]hide command func Test_hide_count() enew! | only let wids = [win_getid()] for i in range(5) new call add(wids, win_getid()) endfor 4wincmd w .hide let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[5], wids[4], wids[3], wids[1], wids[0]], ids) 1hide let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[4], wids[3], wids[1], wids[0]], ids) $hide let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[4], wids[3], wids[1]], ids) 1wincmd w 2hide let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[4], wids[1]], ids) 1wincmd w new call add(wids, win_getid()) new call add(wids, win_getid()) 3wincmd w -hide let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[7], wids[4], wids[1]], ids) 2wincmd w +hide let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[7], wids[4]], ids) only! endfunc " Tests for :[count]close! command with 'hidden' func Test_hidden_close_count() enew! | only let wids = [win_getid()] for i in range(5) new call add(wids, win_getid()) endfor set hidden $ hide let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[5], wids[4], wids[3], wids[2], wids[1]], ids) $-1 close! let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[5], wids[4], wids[3], wids[1]], ids) 1wincmd w .+close! let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[5], wids[3], wids[1]], ids) set nohidden only! endfunc " Tests for 'CTRL-W c' command to close windows. func Test_winclose_command() enew! | only let wids = [win_getid()] for i in range(5) new call add(wids, win_getid()) endfor set hidden 4wincmd w exe "normal \<C-W>c" let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[5], wids[4], wids[3], wids[1], wids[0]], ids) exe "normal 1\<C-W>c" let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[4], wids[3], wids[1], wids[0]], ids) exe "normal 9\<C-W>c" let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[4], wids[3], wids[1]], ids) 1wincmd w exe "normal 2\<C-W>c" let ids = [] windo call add(ids, win_getid()) call assert_equal([wids[4], wids[1]], ids) set nohidden only! endfunc " vim: shiftwidth=2 sts=2 expandtab