# HG changeset patch # User Christian Brabandt # Date 1523824208 -7200 # Node ID 404b89cb1e2abe99b62e0ba923d6572d306c438b # Parent 763d30cb6604b99f68c91743d7eafda966f5d5a9 patch 8.0.1721: no test for using the 'termsize' option commit https://github.com/vim/vim/commit/a7eef3d87fa36d527d1cfc749b400df1e69dcb3d Author: Bram Moolenaar Date: Sun Apr 15 22:25:54 2018 +0200 patch 8.0.1721: no test for using the 'termsize' option Problem: No test for using the 'termsize' option. Solution: Add a test. diff --git a/src/testdir/screendump.vim b/src/testdir/screendump.vim --- a/src/testdir/screendump.vim +++ b/src/testdir/screendump.vim @@ -57,7 +57,12 @@ func RunVimInTerminal(arguments, options " Add -v to have gvim run in the terminal (if possible) let cmd .= ' -v ' . a:arguments let buf = term_start(cmd, {'curwin': 1, 'term_rows': rows, 'term_cols': cols}) - call assert_equal([rows, cols], term_getsize(buf)) + if &termsize == '' + call assert_equal([rows, cols], term_getsize(buf)) + else + let rows = term_getsize(buf)[0] + let cols = term_getsize(buf)[1] + endif " Wait for "All" of the ruler in the status line to be shown. " This can be quite slow (e.g. when using valgrind). diff --git a/src/testdir/test_terminal.vim b/src/testdir/test_terminal.vim --- a/src/testdir/test_terminal.vim +++ b/src/testdir/test_terminal.vim @@ -1356,3 +1356,36 @@ func Test_terminal_ansicolors_func() call term_wait(buf) exe buf . 'bwipe' endfunc + +func Test_terminal_termsize_option() + if !CanRunVimInTerminal() + return + endif + set termsize=6x40 + let text = [] + for n in range(10) + call add(text, repeat(n, 50)) + endfor + call writefile(text, 'Xwinsize') + let buf = RunVimInTerminal('Xwinsize', {}) + let win = bufwinid(buf) + call assert_equal([6, 40], term_getsize(buf)) + call assert_equal(6, winheight(win)) + call assert_equal(40, winwidth(win)) + + " resizing the window doesn't resize the terminal. + resize 10 + vertical resize 60 + call assert_equal([6, 40], term_getsize(buf)) + call assert_equal(10, winheight(win)) + call assert_equal(60, winwidth(win)) + + call StopVimInTerminal(buf) + call delete('Xwinsize') + + call assert_fails('set termsize=40', 'E474') + call assert_fails('set termsize=10+40', 'E474') + call assert_fails('set termsize=abc', 'E474') + + set termsize= +endfunc diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -763,6 +763,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1721, +/**/ 1720, /**/ 1719,