# HG changeset patch # User Bram Moolenaar # Date 1620684009 -7200 # Node ID ed4d7ab9dcdc58075f42673ae5fce9bd0316818a # Parent ae9123ea11afbbf25073e8cafcf4752acb434b01 patch 8.2.2847: Perl not tested sufficiently Commit: https://github.com/vim/vim/commit/588cf7547bafaff46a82bc125d05d24a1cedf827 Author: Dominique Pelle Date: Mon May 10 23:49:39 2021 +0200 patch 8.2.2847: Perl not tested sufficiently Problem: Perl not tested sufficiently. Solution: Add test. Also test W17. (Dominique Pell?, closes https://github.com/vim/vim/issues/8193) diff --git a/src/testdir/test_arabic.vim b/src/testdir/test_arabic.vim --- a/src/testdir/test_arabic.vim +++ b/src/testdir/test_arabic.vim @@ -584,4 +584,12 @@ func Test_arabic_chars_in_search_cmd() bwipe! endfunc +func Test_W17_arabic_requires_utf8() + let save_enc = &encoding + set encoding=latin1 arabic + call assert_match('^W17:', GetMessages()[-1]) + set arabic& + let &encoding = save_enc +endfunc + " vim: shiftwidth=2 sts=2 expandtab diff --git a/src/testdir/test_perl.vim b/src/testdir/test_perl.vim --- a/src/testdir/test_perl.vim +++ b/src/testdir/test_perl.vim @@ -1,6 +1,7 @@ " Tests for Perl interface source check.vim +source shared.vim CheckFeature perl " FIXME: RunTest don't see any error when Perl abort... @@ -52,6 +53,11 @@ func Test_buffer_Append() perl @l = ('5' ..'7') perl $curbuf->Append(0, @l) call assert_equal(['5', '6', '7', '', '1', '2', '3', '4'], getline(1, '$')) + + perl $curbuf->Append(0) + call assert_match('^Usage: VIBUF::Append(vimbuf, lnum, @lines) at .* line 1\.$', + \ GetMessages()[-1]) + bwipe! endfunc @@ -61,6 +67,11 @@ func Test_buffer_Set() perl $curbuf->Set(2, 'a', 'b', 'c') perl $curbuf->Set(4, 'A', 'B', 'C') call assert_equal(['1', 'a', 'b', 'A', 'B'], getline(1, '$')) + + perl $curbuf->Set(0) + call assert_match('^Usage: VIBUF::Set(vimbuf, lnum, @lines) at .* line 1\.$', + \ GetMessages()[-1]) + bwipe! endfunc @@ -210,6 +221,13 @@ func Test_perldo() perldo VIM::DoCommand("%d_") bwipe! + " Check a Perl expression which gives an error. + new + call setline(1, 'one') + perldo 1/0 + call assert_match('^Illegal division by zero at .* line 1\.$', GetMessages()[-1]) + bwipe! + " Check switching to another buffer does not trigger ml_get error. new let wincount = winnr('$') @@ -231,12 +249,13 @@ endfunc func Test_stdio() redir =>l:out perl << trim EOF - VIM::Msg("&VIM::Msg"); + VIM::Msg("VIM::Msg"); + VIM::Msg("VIM::Msg Error", "Error"); print "STDOUT"; print STDERR "STDERR"; EOF redir END - call assert_equal(['&VIM::Msg', 'STDOUT', 'STDERR'], split(l:out, "\n")) + call assert_equal(['VIM::Msg', 'VIM::Msg Error', 'STDOUT', 'STDERR'], split(l:out, "\n")) endfunc " Run first to get a clean namespace 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 */ /**/ + 2847, +/**/ 2846, /**/ 2845,