mirror of
				https://github.com/vim/vim.git
				synced 2025-10-30 09:47:20 -04:00 
			
		
		
		
	patch 9.1.0578: no tests for :Tohtml
Problem: no tests for :Tohtml Solution: Add two basic tests (Yinzuo Jiang) closes: #15240 Signed-off-by: Yinzuo Jiang <jiangyinzuo@foxmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
		
				
					committed by
					
						 Christian Brabandt
						Christian Brabandt
					
				
			
			
				
	
			
			
			
						parent
						
							69a28f6c08
						
					
				
				
					commit
					360c51208e
				
			
							
								
								
									
										1
									
								
								Filelist
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								Filelist
									
									
									
									
									
								
							| @@ -214,6 +214,7 @@ SRC_ALL =	\ | |||||||
| 		src/testdir/pyxfile/*.py \ | 		src/testdir/pyxfile/*.py \ | ||||||
| 		src/testdir/dumps/*.dump \ | 		src/testdir/dumps/*.dump \ | ||||||
| 		src/testdir/dumps/*.vim \ | 		src/testdir/dumps/*.vim \ | ||||||
|  | 		src/testdir/samples/*.html \ | ||||||
| 		src/testdir/samples/*.txt \ | 		src/testdir/samples/*.txt \ | ||||||
| 		src/testdir/samples/*.vim \ | 		src/testdir/samples/*.vim \ | ||||||
| 		src/testdir/samples/test000 \ | 		src/testdir/samples/test000 \ | ||||||
|   | |||||||
| @@ -315,6 +315,7 @@ NEW_TESTS = \ | |||||||
| 	test_textobjects \ | 	test_textobjects \ | ||||||
| 	test_textprop \ | 	test_textprop \ | ||||||
| 	test_timers \ | 	test_timers \ | ||||||
|  | 	test_tohtml \ | ||||||
| 	test_true_false \ | 	test_true_false \ | ||||||
| 	test_trycatch \ | 	test_trycatch \ | ||||||
| 	test_undo \ | 	test_undo \ | ||||||
| @@ -560,6 +561,7 @@ NEW_TESTS_RES = \ | |||||||
| 	test_textobjects.res \ | 	test_textobjects.res \ | ||||||
| 	test_textprop.res \ | 	test_textprop.res \ | ||||||
| 	test_timers.res \ | 	test_timers.res \ | ||||||
|  | 	test_tohtml.res \ | ||||||
| 	test_true_false.res \ | 	test_true_false.res \ | ||||||
| 	test_trycatch.res \ | 	test_trycatch.res \ | ||||||
| 	test_undo.res \ | 	test_undo.res \ | ||||||
|   | |||||||
							
								
								
									
										47
									
								
								src/testdir/samples/Test_tohtml_basic.c.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								src/testdir/samples/Test_tohtml_basic.c.html
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,47 @@ | |||||||
|  | <!DOCTYPE html> | ||||||
|  | <html> | ||||||
|  | <head> | ||||||
|  | <meta charset="UTF-8"> | ||||||
|  | <title>/home/jiangyinzuo/vim/src/testdir/Test_tohtml_basic.c.html</title> | ||||||
|  | <meta name="Generator" content="Vim/9.1"> | ||||||
|  | <meta name="plugin-version" content="vim9.0_v2"> | ||||||
|  | <meta name="syntax" content="none"> | ||||||
|  | <meta name="settings" content="use_css,no_foldcolumn,pre_wrap,prevent_copy=,use_input_for_pc=none"> | ||||||
|  | <meta name="colorscheme" content="none"> | ||||||
|  | <style> | ||||||
|  | <!-- | ||||||
|  | pre { white-space: pre-wrap; font-family: monospace; color: #000000; background-color: #ffffff; } | ||||||
|  | body { font-family: monospace; color: #000000; background-color: #ffffff; } | ||||||
|  | * { font-size: 1em; } | ||||||
|  | --> | ||||||
|  | </style> | ||||||
|  | </head> | ||||||
|  | <body> | ||||||
|  | <pre id='vimCodeElement'> | ||||||
|  | #include <stdio.h> | ||||||
|  | #include <stdlib.h> | ||||||
|  |  | ||||||
|  | int isprime(int n) | ||||||
|  | { | ||||||
|  |   if (n <= 1) | ||||||
|  |     return 0; | ||||||
|  |  | ||||||
|  |   for (int i = 2; i <= n / 2; i++) | ||||||
|  |     if (n % i == 0) | ||||||
|  |       return 0; | ||||||
|  |  | ||||||
|  |   return 1; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | int main(int argc, char *argv[]) | ||||||
|  | { | ||||||
|  |   int n = 7; | ||||||
|  |  | ||||||
|  |   printf("%d is %s prime\n", n, isprime(n) ? "a" : "not a"); | ||||||
|  |  | ||||||
|  |   return 0; | ||||||
|  | } | ||||||
|  | </pre> | ||||||
|  | </body> | ||||||
|  | </html> | ||||||
|  | <!-- vim: set foldmethod=manual : --> | ||||||
							
								
								
									
										40
									
								
								src/testdir/samples/Test_tohtml_basic_no_css.c.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								src/testdir/samples/Test_tohtml_basic_no_css.c.html
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,40 @@ | |||||||
|  | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||||||
|  | <html> | ||||||
|  | <head> | ||||||
|  | <meta http-equiv="content-type" content="text/html; charset=UTF-8"> | ||||||
|  | <title>/home/jiangyinzuo/vim/src/testdir/Test_tohtml_basic_no_css.c.html</title> | ||||||
|  | <meta name="Generator" content="Vim/9.1"> | ||||||
|  | <meta name="plugin-version" content="vim9.0_v2"> | ||||||
|  | <meta name="syntax" content="none"> | ||||||
|  | <meta name="settings" content="no_pre,no_foldcolumn,expand_tabs,prevent_copy=,use_input_for_pc=none"> | ||||||
|  | <meta name="colorscheme" content="none"> | ||||||
|  | </head> | ||||||
|  | <body bgcolor="#ffffff" text="#000000"> | ||||||
|  | <font face="monospace"> | ||||||
|  | #include <stdio.h><br> | ||||||
|  | #include <stdlib.h><br> | ||||||
|  | <br> | ||||||
|  | int isprime(int n)<br> | ||||||
|  | {<br> | ||||||
|  |   if (n <= 1)<br> | ||||||
|  |     return 0;<br> | ||||||
|  | <br> | ||||||
|  |   for (int i = 2; i <= n / 2; i++)<br> | ||||||
|  |     if (n % i == 0)<br> | ||||||
|  |       return 0;<br> | ||||||
|  | <br> | ||||||
|  |   return 1;<br> | ||||||
|  | }<br> | ||||||
|  | <br> | ||||||
|  | int main(int argc, char *argv[])<br> | ||||||
|  | {<br> | ||||||
|  |   int n = 7;<br> | ||||||
|  | <br> | ||||||
|  |   printf("%d is %s prime\n", n, isprime(n) ? "a" : "not a");<br> | ||||||
|  | <br> | ||||||
|  |   return 0;<br> | ||||||
|  | }<br> | ||||||
|  | </font> | ||||||
|  | </body> | ||||||
|  | </html> | ||||||
|  | <!-- vim: set foldmethod=manual : --> | ||||||
							
								
								
									
										72
									
								
								src/testdir/test_tohtml.vim
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								src/testdir/test_tohtml.vim
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,72 @@ | |||||||
|  | " Tests for Vim :TOhtml | ||||||
|  |  | ||||||
|  | source check.vim | ||||||
|  |  | ||||||
|  | func s:setup_basic(src_name) | ||||||
|  |   let lines =<< trim END | ||||||
|  |     #include <stdio.h> | ||||||
|  |     #include <stdlib.h> | ||||||
|  |  | ||||||
|  |     int isprime(int n) | ||||||
|  |     { | ||||||
|  |       if (n <= 1) | ||||||
|  |         return 0; | ||||||
|  |  | ||||||
|  |       for (int i = 2; i <= n / 2; i++) | ||||||
|  |         if (n % i == 0) | ||||||
|  |           return 0; | ||||||
|  |  | ||||||
|  |       return 1; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     int main(int argc, char *argv[]) | ||||||
|  |     { | ||||||
|  |       int n = 7; | ||||||
|  |  | ||||||
|  |       printf("%d is %s prime\n", n, isprime(n) ? "a" : "not a"); | ||||||
|  |  | ||||||
|  |       return 0; | ||||||
|  |     } | ||||||
|  |   END | ||||||
|  |   call writefile(lines, a:src_name) | ||||||
|  |   exe 'edit ' . a:src_name | ||||||
|  |   TOhtml | ||||||
|  |   write | ||||||
|  | endfunc | ||||||
|  |  | ||||||
|  | func s:cleanup_basic(src_name) | ||||||
|  |   call delete(a:src_name) | ||||||
|  |   call delete(a:src_name . ".html") | ||||||
|  | endfunc | ||||||
|  |  | ||||||
|  | source $VIMRUNTIME/plugin/tohtml.vim | ||||||
|  |  | ||||||
|  | func Test_tohtml_basic() | ||||||
|  |   let src_name = "Test_tohtml_basic.c" | ||||||
|  |   call s:setup_basic(src_name) | ||||||
|  |   let expected = readfile("samples/" . src_name . ".html") | ||||||
|  |   let actual = readfile(src_name . ".html") | ||||||
|  |   call assert_equal(expected[0:3], actual[0:3]) | ||||||
|  |   " Ignore the title | ||||||
|  |   call assert_equal(expected[5:11], actual[5:11]) | ||||||
|  |   " Ignore pre and body css | ||||||
|  |   call assert_equal(expected[14:], actual[14:]) | ||||||
|  |   call s:cleanup_basic(src_name) | ||||||
|  | endfunc | ||||||
|  |  | ||||||
|  | func Test_tohtml_basic_no_css() | ||||||
|  |   let g:html_use_css = 0 | ||||||
|  |   let src_name = "Test_tohtml_basic_no_css.c" | ||||||
|  |   call s:setup_basic(src_name) | ||||||
|  |   let expected = readfile("samples/" . src_name . ".html") | ||||||
|  |   let actual = readfile(src_name . ".html") | ||||||
|  |   call assert_equal(expected[0:3], actual[0:3]) | ||||||
|  |   " Ignore the title | ||||||
|  |   call assert_equal(expected[5:10], actual[5:10]) | ||||||
|  |   " Ignore body's inline css | ||||||
|  |   call assert_equal(expected[12:], actual[12:]) | ||||||
|  |   call s:cleanup_basic(src_name) | ||||||
|  |   unlet g:html_use_css | ||||||
|  | endfunc | ||||||
|  |  | ||||||
|  | " vim: shiftwidth=2 sts=2 expandtab | ||||||
| @@ -704,6 +704,8 @@ static char *(features[]) = | |||||||
|  |  | ||||||
| static int included_patches[] = | static int included_patches[] = | ||||||
| {   /* Add new patch number below this line */ | {   /* Add new patch number below this line */ | ||||||
|  | /**/ | ||||||
|  |     578, | ||||||
| /**/ | /**/ | ||||||
|     577, |     577, | ||||||
| /**/ | /**/ | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user