# HG changeset patch # User Bram Moolenaar # Date 1571085003 -7200 # Node ID 60fce48438e244e9cae1398efbbd0486b3543f58 # Parent 15cb4163f9ae2075c3e62da713230122c1bff667 patch 8.1.2150: no test for 'ttymouse' set from xterm version response Commit: https://github.com/vim/vim/commit/03b00476eed43dbc25222549c00b3af28e79b350 Author: Bram Moolenaar Date: Mon Oct 14 22:22:03 2019 +0200 patch 8.1.2150: no test for 'ttymouse' set from xterm version response Problem: No test for 'ttymouse' set from xterm version response. Solution: Test the three possible values. diff --git a/src/testdir/test_termcodes.vim b/src/testdir/test_termcodes.vim --- a/src/testdir/test_termcodes.vim +++ b/src/testdir/test_termcodes.vim @@ -885,13 +885,12 @@ endfunc " This checks the libvterm version response. " This must be after other tests, because it has side effects to xterm " properties. -" TODO: check other terminals response func Test_xx02_libvterm_response() " Termresponse is only parsed when t_RV is not empty. set t_RV=x + set ttymouse=xterm call test_option_not_set('ttymouse') - let seq = "\[>0;100;0c" call feedkeys(seq, 'Lx!') call assert_equal(seq, v:termresponse) @@ -900,6 +899,42 @@ func Test_xx02_libvterm_response() set t_RV= endfunc +" This checks the xterm version response. +" This must be after other tests, because it has side effects to xterm +" properties. +func Test_xx03_xterm_response() + " Termresponse is only parsed when t_RV is not empty. + set t_RV=x + + " xterm < 95: "xterm" (actually unmodified) + set ttymouse=xterm + call test_option_not_set('ttymouse') + let seq = "\[>0;94;0c" + call feedkeys(seq, 'Lx!') + call assert_equal(seq, v:termresponse) + call assert_equal('xterm', &ttymouse) + + " xterm >= 95 < 277 "xterm2" + set ttymouse=xterm + call test_option_not_set('ttymouse') + let seq = "\[>0;267;0c" + call feedkeys(seq, 'Lx!') + call assert_equal(seq, v:termresponse) + call assert_equal('xterm2', &ttymouse) + + " xterm >= 277: "sgr" + set ttymouse=xterm + call test_option_not_set('ttymouse') + let seq = "\[>0;277;0c" + call feedkeys(seq, 'Lx!') + call assert_equal(seq, v:termresponse) + call assert_equal('sgr', &ttymouse) + + set t_RV= +endfunc + +" TODO: check other terminals response + func Test_get_termcode() try let k1 = &t_k1 diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -754,6 +754,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 2150, +/**/ 2149, /**/ 2148,