Patch 8.2.1295
Problem: Tests 44 and 99 are old style.
Solution: Convert to new style tests. (Yegappan Lakshmanan, closes #6536)
Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
src/testdir/test44.in, src/testdir/test44.ok,
src/testdir/test99.in, src/testdir/test99.ok,
src/testdir/test_regexp_utf8.vim
*** ../vim-8.2.1294/src/Makefile 2020-07-22 19:10:59.877072059 +0200
--- src/Makefile 2020-07-26 12:49:10.577709777 +0200
***************
*** 2311,2320 ****
# Run individual OLD style test.
# These do not depend on the executable, compile it when needed.
test1 \
! test42 test44 test49 \
test52 test59 \
! test70 \
! test99:
cd testdir; rm -f [email protected]; $(MAKE) -f Makefile [email protected]
VIMPROG=../$(VIMTESTTARGET) $(GUI_TESTARG) SCRIPTSOURCE=../$(SCRIPTSOURCE)
# Run individual NEW style test.
--- 2311,2319 ----
# Run individual OLD style test.
# These do not depend on the executable, compile it when needed.
test1 \
! test42 test49 \
test52 test59 \
! test70:
cd testdir; rm -f [email protected]; $(MAKE) -f Makefile [email protected]
VIMPROG=../$(VIMTESTTARGET) $(GUI_TESTARG) SCRIPTSOURCE=../$(SCRIPTSOURCE)
# Run individual NEW style test.
*** ../vim-8.2.1294/src/testdir/Make_all.mak 2020-07-11 13:09:17.377971831
+0200
--- src/testdir/Make_all.mak 2020-07-26 12:49:10.577709777 +0200
***************
*** 14,22 ****
# Tests that run on all systems.
SCRIPTS_ALL = \
test42.out \
! test44.out \
! test70.out \
! test99.out
# Tests that run on most systems, but not on Amiga.
SCRIPTS_MORE1 = \
--- 14,20 ----
# Tests that run on all systems.
SCRIPTS_ALL = \
test42.out \
! test70.out
# Tests that run on most systems, but not on Amiga.
SCRIPTS_MORE1 = \
*** ../vim-8.2.1294/src/testdir/Make_vms.mms 2020-07-03 21:17:31.339914463
+0200
--- src/testdir/Make_vms.mms 2020-07-26 12:49:10.577709777 +0200
***************
*** 74,80 ****
.SUFFIXES : .out .in
SCRIPT = test1.out \
! test42.out test44.out test49.out test77a.out test99.out
# Known problems:
#
--- 74,80 ----
.SUFFIXES : .out .in
SCRIPT = test1.out \
! test42.out test49.out test77a.out
# Known problems:
#
*** ../vim-8.2.1294/src/testdir/test44.in 2016-04-03 14:07:56.000000000
+0200
--- src/testdir/test44.in 1970-01-01 01:00:00.000000000 +0100
***************
*** 1,81 ****
- Tests for regexp with multi-byte encoding and various magic settings.
- Test matchstr() with a count and multi-byte chars.
- See test99 for exactly the same test with re=2.
-
- STARTTEST
- :so mbyte.vim
- :set nocompatible encoding=utf-8 termencoding=latin1 viminfo+=nviminfo
- :set re=1
- /^1
- /a*b\{2}c\+/e
- x/\Md\*e\{2}f\+/e
- x:set nomagic
- /g\*h\{2}i\+/e
- x/\mj*k\{2}l\+/e
- x/\vm*n{2}o+/e
- x/\V^aa$
- x:set magic
- /\v(a)(b)\2\1\1/e
- x/\V[ab]\(\[xy]\)\1
- x:" Now search for multi-byte without composing char
- /ม
- x:" Now search for multi-byte with composing char
- /ม่
- x:" find word by change of word class
- /ち\<カヨ\>は
- x:" Test \%u, [\u] and friends
- :" c
- /\%u20ac
- x:" d
- /[\u4f7f\u5929]\+
- x:" e
- /\%U12345678
- x:" f
- /[\U1234abcd\u1234\uabcd]
- x:" g
- /\%d21879b
- x:" j Test backwards search from a multi-byte char
- /x
- x?.
- x:" k
- :let @w=':%s#comb[i]nations#œ̄ṣ́m̥̄ᾱ̆́#g'
- :@w
- :"
- :" l Test what 7.3.192 fixed
- /^l
- :s/ \?/ /g
- :?^1?,$w! test.out
- :e! test.out
- G:put =matchstr(\"אבגד\", \".\", 0, 2) " ב
- :put =matchstr(\"אבגד\", \"..\", 0, 2) " בג
- :put =matchstr(\"אבגד\", \".\", 0, 0) " א
- :put =matchstr(\"אבגד\", \".\", 4, -1) " ג
- :new
- :$put =['dog(a', 'cat(']
- /(/e+
- "ayn:bd!
- :$put =''
- G"ap
- :w!
- :qa!
- ENDTEST
-
- 1 a aa abb abbccc
- 2 d dd dee deefff
- 3 g gg ghh ghhiii
- 4 j jj jkk jkklll
- 5 m mm mnn mnnooo
- 6 x ^aa$ x
- 7 (a)(b) abbaa
- 8 axx [ab]xx
- 9 หม่x อมx
- a อมx หม่x
- b ちカヨは
- c x ¬€x
- d 天使x
- e �����¸y
- f ����� z
- g a啷bb
- j 0123❤x
- k combinations
- l äö üᾱ̆́
--- 0 ----
*** ../vim-8.2.1294/src/testdir/test44.ok 2016-04-03 14:08:06.000000000
+0200
--- src/testdir/test44.ok 1970-01-01 01:00:00.000000000 +0100
***************
*** 1,25 ****
- 1 a aa abb abbcc
- 2 d dd dee deeff
- 3 g gg ghh ghhii
- 4 j jj jkk jkkll
- 5 m mm mnn mnnoo
- 6 x aa$ x
- 7 (a)(b) abba
- 8 axx ab]xx
- 9 หม่x อx
- a อมx หx
- b カヨは
- c x ¬x
- d 使x
- e y
- f z
- g abb
- j 012❤
- k œ̄ṣ́m̥̄ᾱ̆́
- l ä ö ü ᾱ̆́
- ב
- בג
- א
- ג
- a
- cat(
--- 0 ----
*** ../vim-8.2.1294/src/testdir/test99.in 2016-04-03 14:06:03.000000000
+0200
--- src/testdir/test99.in 1970-01-01 01:00:00.000000000 +0100
***************
*** 1,69 ****
- Tests for regexp with multi-byte encoding and various magic settings.
- Test matchstr() with a count and multi-byte chars.
- See test44 for exactly the same test with re=1.
-
- STARTTEST
- :so mbyte.vim
- :set nocompatible encoding=utf-8 termencoding=latin1 viminfo+=nviminfo
- :set re=2
- /^1
- /a*b\{2}c\+/e
- x/\Md\*e\{2}f\+/e
- x:set nomagic
- /g\*h\{2}i\+/e
- x/\mj*k\{2}l\+/e
- x/\vm*n{2}o+/e
- x/\V^aa$
- x:set magic
- /\v(a)(b)\2\1\1/e
- x/\V[ab]\(\[xy]\)\1
- x:" Now search for multi-byte without composing char
- /ม
- x:" Now search for multi-byte with composing char
- /ม่
- x:" find word by change of word class
- /ち\<カヨ\>は
- x:" Test \%u, [\u] and friends
- /\%u20ac
- x/[\u4f7f\u5929]\+
- x/\%U12345678
- x/[\U1234abcd\u1234\uabcd]
- x/\%d21879b
- x:" Test backwards search from a multi-byte char
- /x
- x?.
- x:let @w=':%s#comb[i]nations#œ̄ṣ́m̥̄ᾱ̆́#g'
- :@w
- :"
- :" l Test what 7.3.192 fixed
- /^l
- :s/ \?/ /g
- :?^1?,$w! test.out
- :e! test.out
- G:put =matchstr(\"אבגד\", \".\", 0, 2) " ב
- :put =matchstr(\"אבגד\", \"..\", 0, 2) " בג
- :put =matchstr(\"אבגד\", \".\", 0, 0) " א
- :put =matchstr(\"אבגד\", \".\", 4, -1) " ג
- :w!
- :qa!
- ENDTEST
-
- 1 a aa abb abbccc
- 2 d dd dee deefff
- 3 g gg ghh ghhiii
- 4 j jj jkk jkklll
- 5 m mm mnn mnnooo
- 6 x ^aa$ x
- 7 (a)(b) abbaa
- 8 axx [ab]xx
- 9 หม่x อมx
- a อมx หม่x
- b ちカヨは
- c x ¬€x
- d 天使x
- e �����¸y
- f ����� z
- g a啷bb
- j 0123❤x
- k combinations
- l äö üᾱ̆́
--- 0 ----
*** ../vim-8.2.1294/src/testdir/test99.ok 2016-04-03 14:07:07.000000000
+0200
--- src/testdir/test99.ok 1970-01-01 01:00:00.000000000 +0100
***************
*** 1,23 ****
- 1 a aa abb abbcc
- 2 d dd dee deeff
- 3 g gg ghh ghhii
- 4 j jj jkk jkkll
- 5 m mm mnn mnnoo
- 6 x aa$ x
- 7 (a)(b) abba
- 8 axx ab]xx
- 9 หม่x อx
- a อมx หx
- b カヨは
- c x ¬x
- d 使x
- e y
- f z
- g abb
- j 012❤
- k œ̄ṣ́m̥̄ᾱ̆́
- l ä ö ü ᾱ̆́
- ב
- בג
- א
- ג
--- 0 ----
*** ../vim-8.2.1294/src/testdir/test_regexp_utf8.vim 2020-07-20
21:21:26.950936122 +0200
--- src/testdir/test_regexp_utf8.vim 2020-07-26 12:49:10.581709760 +0200
***************
*** 377,380 ****
--- 377,504 ----
set regexpengine&
endfunc
+ " Tests for regexp with multi-byte encoding and various magic settings
+ func Run_regexp_multibyte_magic()
+ let text =<< trim END
+ 1 a aa abb abbccc
+ 2 d dd dee deefff
+ 3 g gg ghh ghhiii
+ 4 j jj jkk jkklll
+ 5 m mm mnn mnnooo
+ 6 x ^aa$ x
+ 7 (a)(b) abbaa
+ 8 axx [ab]xx
+ 9 หม่x อมx
+ a อมx หม่x
+ b ちカヨは
+ c x ¬€x
+ d 天使x
+ e �����¸y
+ f ����� z
+ g a啷bb
+ j 0123❤x
+ k combinations
+ l äö üᾱ̆́
+ END
+
+ new
+ call setline(1, text)
+ exe 'normal /a*b\{2}c\+/e' .. "\<CR>x"
+ call assert_equal('1 a aa abb abbcc', getline('.'))
+ exe 'normal /\Md\*e\{2}f\+/e' .. "\<CR>x"
+ call assert_equal('2 d dd dee deeff', getline('.'))
+ set nomagic
+ exe 'normal /g\*h\{2}i\+/e' .. "\<CR>x"
+ call assert_equal('3 g gg ghh ghhii', getline('.'))
+ exe 'normal /\mj*k\{2}l\+/e' .. "\<CR>x"
+ call assert_equal('4 j jj jkk jkkll', getline('.'))
+ exe 'normal /\vm*n{2}o+/e' .. "\<CR>x"
+ call assert_equal('5 m mm mnn mnnoo', getline('.'))
+ exe 'normal /\V^aa$/' .. "\<CR>x"
+ call assert_equal('6 x aa$ x', getline('.'))
+ set magic
+ exe 'normal /\v(a)(b)\2\1\1/e' .. "\<CR>x"
+ call assert_equal('7 (a)(b) abba', getline('.'))
+ exe 'normal /\V[ab]\(\[xy]\)\1' .. "\<CR>x"
+ call assert_equal('8 axx ab]xx', getline('.'))
+
+ " search for multi-byte without composing char
+ exe 'normal /ม' .. "\<CR>x"
+ call assert_equal('9 หม่x อx', getline('.'))
+
+ " search for multi-byte with composing char
+ exe 'normal /ม่' .. "\<CR>x"
+ call assert_equal('a อมx หx', getline('.'))
+
+ " find word by change of word class
+ exe 'normal /ち\<カヨ\>は' .. "\<CR>x"
+ call assert_equal('b カヨは', getline('.'))
+
+ " Test \%u, [\u] and friends
+ " c
+ exe 'normal /\%u20ac' .. "\<CR>x"
+ call assert_equal('c x ¬x', getline('.'))
+ " d
+ exe 'normal /[\u4f7f\u5929]\+' .. "\<CR>x"
+ call assert_equal('d 使x', getline('.'))
+ " e
+ exe 'normal /\%U12345678' .. "\<CR>x"
+ call assert_equal('e y', getline('.'))
+ " f
+ exe 'normal /[\U1234abcd\u1234\uabcd]' .. "\<CR>x"
+ call assert_equal('f z', getline('.'))
+ " g
+ exe 'normal /\%d21879b' .. "\<CR>x"
+ call assert_equal('g abb', getline('.'))
+
+ " j Test backwards search from a multi-byte char
+ exe "normal /x\<CR>x?.\<CR>x"
+ call assert_equal('j 012❤', getline('.'))
+ " k
+ let @w=':%s#comb[i]nations#œ̄ṣ́m̥̄ᾱ̆́#g'
+ @w
+ call assert_equal('k œ̄ṣ́m̥̄ᾱ̆́', getline(18))
+
+ close!
+ endfunc
+
+ func Test_regexp_multibyte_magic()
+ set regexpengine=1
+ call Run_regexp_multibyte_magic()
+ set regexpengine=2
+ call Run_regexp_multibyte_magic()
+ set regexpengine&
+ endfunc
+
+ " Test for 7.3.192
+ " command ":s/ \?/ /g" splits multi-byte characters into bytes
+ func Test_split_multibyte_to_bytes()
+ new
+ call setline(1, 'l äö üᾱ̆́')
+ s/ \?/ /g
+ call assert_equal(' l ä ö ü ᾱ̆́', getline(1))
+ close!
+ endfunc
+
+ " Test for matchstr() with multibyte characters
+ func Test_matchstr_multibyte()
+ new
+ call assert_equal('ב', matchstr("אבגד", ".", 0, 2))
+ call assert_equal('בג', matchstr("אבגד", "..", 0, 2))
+ call assert_equal('א', matchstr("אבגד", ".", 0, 0))
+ call assert_equal('ג', matchstr("אבגד", ".", 4, -1))
+ close!
+ endfunc
+
+ " Test for 7.4.636
+ " A search with end offset gets stuck at end of file.
+ func Test_search_with_end_offset()
+ new
+ call setline(1, ['', 'dog(a', 'cat('])
+ exe "normal /(/e+" .. "\<CR>"
+ normal "ayn
+ call assert_equal("a\ncat(", @a)
+ close!
+ endfunc
+
" vim: shiftwidth=2 sts=2 expandtab
*** ../vim-8.2.1294/src/version.c 2020-07-25 19:38:13.329572365 +0200
--- src/version.c 2020-07-26 12:51:40.913047405 +0200
***************
*** 756,757 ****
--- 756,759 ----
{ /* Add new patch number below this line */
+ /**/
+ 1295,
/**/
--
>From "know your smileys":
y:-) Bad toupee
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/vim_dev/202007261054.06QAsM47549840%40masaka.moolenaar.net.