Commits

Anonymous committed 1c819b0

updated for version 7.3.838
Problem: Insufficient testing for mksession.
Solution: Add tests. (mostly by Roland Eggner)

Comments (0)

Files changed (12)

 			    (long)wp->w_virtcol + 1) < 0
 			|| put_eol(fd) == FAIL
 			|| put_line(fd, "else") == FAIL
-			|| fprintf(fd, "  normal! %d|", wp->w_virtcol + 1) < 0
+			|| fprintf(fd, "  normal! 0%d|", wp->w_virtcol + 1) < 0
 			|| put_eol(fd) == FAIL
 			|| put_line(fd, "endif") == FAIL)
 		    return FAIL;

src/testdir/Make_amiga.mak

 		test71.out test72.out test73.out test74.out test75.out \
 		test76.out test77.out test78.out test79.out test80.out \
 		test81.out test82.out test83.out test84.out test88.out \
-		test89.out test90.out test91.out
+		test89.out test90.out test91.out test92.out test93.out
 
 .SUFFIXES: .in .out
 
 test89.out: test89.in
 test90.out: test90.in
 test91.out: test91.in
+test92.out: test92.in
+test93.out: test93.in

src/testdir/Make_dos.mak

 		test74.out test75.out test76.out test77.out test78.out \
 		test79.out test80.out test81.out test82.out test83.out \
 		test84.out test85.out test86.out test87.out test88.out \
-		test89.out test90.out test91.out
+		test89.out test90.out test91.out test92.out test93.out
 
 SCRIPTS32 =	test50.out test70.out
 

src/testdir/Make_ming.mak

 		test74.out test75.out test76.out test77.out test78.out \
 		test79.out test80.out test81.out test82.out test83.out \
 		test84.out test85.out test86.out test87.out test88.out \
-		test89.out test90.out test91.out
+		test89.out test90.out test91.out test92.out test93.out
 
 SCRIPTS32 =	test50.out test70.out
 

src/testdir/Make_os2.mak

 		test71.out test72.out test73.out test74.out test75.out \
 		test76.out test77.out test78.out test79.out test80.out \
 		test81.out test82.out test83.out test84.out test88.out \
-		test89.out test90.out test91.out
+		test89.out test90.out test91.out test92.out test93.out
 
 .SUFFIXES: .in .out
 

src/testdir/Make_vms.mms

 # Authors:	Zoltan Arpadffy, <arpadffy@polarhome.com>
 #		Sandor Kopanyi,  <sandor.kopanyi@mailbox.hu>
 #
-# Last change:  2013 Feb 20
+# Last change:  2013-02-21
 #
 # This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
 # Edit the lines in the Configuration section below to select.
 	 test71.out test72.out test74.out test75.out test76.out \
 	 test77.out test78.out test79.out test80.out test81.out \
 	 test82.out test83.out test84.out test88.out test89.out \
-	 test90.out test91.out
+	 test90.out test91.out test92.out test93.out
 
 # Known problems:
 # Test 30: a problem around mac format - unknown reason

src/testdir/Makefile

 		test74.out test75.out test76.out test77.out test78.out \
 		test79.out test80.out test81.out test82.out test83.out \
 		test84.out test85.out test86.out test87.out test88.out \
-		test89.out test90.out test91.out
+		test89.out test90.out test91.out test92.out test93.out
 
 SCRIPTS_GUI = test16.out
 

src/testdir/test92.in

+vim: set ft=vim fenc=utf-8:
+
+Tests if :mksession saves cursor columns correctly in presence of tab and 
+multibyte characters when fileencoding=utf-8.
+
+STARTTEST
+:so mbyte.vim
+:if !has('mksession')
+:  e! test.ok
+:  wq! test.out
+:endif
+:set sessionoptions=buffers splitbelow fileencoding=utf-8
+/^start:
+:vsplit
+j16|:split
+j16|:split
+j16|:split
+j8|:split
+j8|:split
+j16|:split
+j16|:split
+j16|:wincmd l
+/^start:
+:set nowrap
+j16|3zl:split
+j016|3zl:split
+j016|3zl:split
+j08|3zl:split
+j08|3zl:split
+j016|3zl:split
+j016|3zl:split
+j016|3zl:split
+:mksession! test.out
+:new test.out
+:v/\(^ *normal! 0\|^ *exe 'normal!\)/d
+:w
+:qa!
+ENDTEST
+
+start:
+no multibyte chAracter
+	one leaDing tab
+    four leadinG spaces
+two		consecutive tabs
+two	tabs	in one line
+one … multibyteCharacter
+a “b” two multiByte characters
+“c”1€ three mulTibyte characters

src/testdir/test92.ok

+normal! 016|
+normal! 016|
+normal! 016|
+normal! 08|
+normal! 08|
+normal! 016|
+normal! 016|
+normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 8 . '|'
+  normal! 08|
+  exe 'normal! ' . s:c . '|zs' . 8 . '|'
+  normal! 08|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|

src/testdir/test93.in

+vim: set ft=vim fenc=latin1:
+
+Tests if :mksession saves cursor columns correctly in presence of tab and 
+multibyte characters when fileencoding=latin1.
+
+STARTTEST
+:so mbyte.vim
+:if !has('mksession')
+:  e! test.ok
+:  wq! test.out
+:endif
+:set sessionoptions=buffers splitbelow fileencoding=latin1
+/^start:
+:vsplit
+j16|:split
+j16|:split
+j16|:split
+j8|:split
+j8|:split
+j16|:split
+j16|:split
+j16|:wincmd l
+/^start:
+:set nowrap
+j16|3zl:split
+j016|3zl:split
+j016|3zl:split
+j08|3zl:split
+j08|3zl:split
+j016|3zl:split
+j016|3zl:split
+j016|3zl:split
+:mksession! test.out
+:new test.out
+:v/\(^ *normal! 0\|^ *exe 'normal!\)/d
+:w
+:qa!
+ENDTEST
+
+start:
+no multibyte chAracter
+	one leaDing tab
+    four leadinG spaces
+two		consecutive tabs
+two	tabs	in one line
+one � multibyteCharacter
+a� �  two multiByte characters
+A���  three mulTibyte characters

src/testdir/test93.ok

+normal! 016|
+normal! 016|
+normal! 016|
+normal! 08|
+normal! 08|
+normal! 016|
+normal! 016|
+normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 8 . '|'
+  normal! 08|
+  exe 'normal! ' . s:c . '|zs' . 8 . '|'
+  normal! 08|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|
+  exe 'normal! ' . s:c . '|zs' . 16 . '|'
+  normal! 016|
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    838,
+/**/
     837,
 /**/
     836,