# HG changeset patch # User Bram Moolenaar # Date 1641141002 -3600 # Node ID 6f43253463cc4b1a1b55873ae0f7f4a0f5558db7 # Parent 1b88592350727c319624008b3e16dc51b34d66a1 patch 8.2.3982: some lines of code not covered by tests Commit: https://github.com/vim/vim/commit/8bfa0eb863357c1013024233ebb2e95a0a848002 Author: Dominique Pelle Date: Sun Jan 2 16:16:33 2022 +0000 patch 8.2.3982: some lines of code not covered by tests Problem: Some lines of code not covered by tests. Solution: Add a few more test cases. (Dominique Pell?, closes https://github.com/vim/vim/issues/9453) diff --git a/src/testdir/test_filter_map.vim b/src/testdir/test_filter_map.vim --- a/src/testdir/test_filter_map.vim +++ b/src/testdir/test_filter_map.vim @@ -151,7 +151,7 @@ func Test_filter_map_string() let lines =<< trim END VAR s = "abc" call filter(s, '"b" != v:val') - call assert_equal(s, s) + call assert_equal('abc', s) call assert_equal('ac', filter('abc', '"b" != v:val')) call assert_equal('あいうえお', filter('あxいxうxえxお', '"x" != v:val')) call assert_equal('あa😊💕💕b💕', filter('あxax😊x💕💕b💕x', '"x" != v:val')) @@ -172,7 +172,7 @@ func Test_filter_map_string() let lines =<< trim END VAR s = "abc" call map(s, 'nr2char(char2nr(v:val) + 2)') - call assert_equal(s, s) + call assert_equal('abc', s) call assert_equal('cde', map('abc', 'nr2char(char2nr(v:val) + 2)')) call assert_equal('[あ][i][う][え][お]', map('あiうえお', '"[" .. v:val .. "]"')) call assert_equal('[あ][a][😊][,][‱][‼][⁇][⁈][⁉][💕][b][💕][c][💕]', map('あa😊,‱‼⁇⁈⁉💕b💕c💕', '"[" .. v:val .. "]"')) @@ -191,7 +191,7 @@ func Test_filter_map_string() let lines =<< trim END VAR s = "abc" call mapnew(s, 'nr2char(char2nr(v:val) + 2)') - call assert_equal(s, s) + call assert_equal('abc', s) call assert_equal('cde', mapnew('abc', 'nr2char(char2nr(v:val) + 2)')) call assert_equal('[あ][i][う][え][お]', mapnew('あiうえお', '"[" .. v:val .. "]"')) call assert_equal('[あ][a][😊][,][‱][‼][⁇][⁈][⁉][💕][b][💕][c][💕]', mapnew('あa😊,‱‼⁇⁈⁉💕b💕c💕', '"[" .. v:val .. "]"')) diff --git a/src/testdir/test_highlight.vim b/src/testdir/test_highlight.vim --- a/src/testdir/test_highlight.vim +++ b/src/testdir/test_highlight.vim @@ -922,17 +922,20 @@ func Test_highlight_default_colorscheme_ let hlTestHiPre = HighlightArgs('TestHi') " Test colorscheme + call assert_equal("\ndefault", execute('colorscheme')) hi clear if exists('syntax_on') syntax reset endif let g:colors_name = 'test' + call assert_equal("\ntest", execute('colorscheme')) hi link TestLink ErrorMsg hi TestHi ctermbg=green " Restore default highlighting colorscheme default " 'default' should work no matter if highlight group was cleared + call assert_equal("\ndefault", execute('colorscheme')) hi def link TestLink Identifier hi def TestHi ctermbg=red let hlTestLinkPost = HighlightArgs('TestLink') diff --git a/src/testdir/test_regexp_latin.vim b/src/testdir/test_regexp_latin.vim --- a/src/testdir/test_regexp_latin.vim +++ b/src/testdir/test_regexp_latin.vim @@ -6,7 +6,10 @@ scriptencoding latin1 source check.vim func s:equivalence_test() - let str = "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z" + let str = 'A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ' + \ .. 'a b c d e f g h i j k l m n o p q r s t u v w x y z ' + \ .. "0 1 2 3 4 5 6 7 8 9 " + \ .. "` ~ ! ? ; : . , / \\ ' \" | < > [ ] { } ( ) @ # $ % ^ & * _ - + \b \e \f \n \r \t" let groups = split(str) for group1 in groups for c in split(group1, '\zs') diff --git a/src/testdir/test_search.vim b/src/testdir/test_search.vim --- a/src/testdir/test_search.vim +++ b/src/testdir/test_search.vim @@ -1682,6 +1682,8 @@ func Test_invalid_regexp() call assert_fails("call search('\\(')", 'E54:') call assert_fails("call search('\\)')", 'E55:') call assert_fails("call search('\\z\\(\\)')", 'E66:') + call assert_fails("call search('\\z2')", 'E67:') + call assert_fails("call search('\\zx')", 'E867:') call assert_fails("call search('\\%[ab')", 'E69:') call assert_fails("call search('\\%[]')", 'E70:') call assert_fails("call search('\\%9999999999999999999999999999v')", 'E951:') diff --git a/src/testdir/test_vim9_builtin.vim b/src/testdir/test_vim9_builtin.vim --- a/src/testdir/test_vim9_builtin.vim +++ b/src/testdir/test_vim9_builtin.vim @@ -956,6 +956,8 @@ def Test_expandcmd() assert_equal("yes", expandcmd("`={a: 'yes'}['a']`")) expandcmd('')->assert_equal('') + + CheckDefAndScriptFailure(['expandcmd([1])'], ['E1013: Argument 1: type mismatch, expected string but got list', 'E1174: String required for argument 1']) enddef def Test_extend_arg_types() diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -751,6 +751,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 3982, +/**/ 3981, /**/ 3980,