changeset 14272:5403d789674f v8.1.0152

patch 8.1.0152: cannot easily run individual tests on MS-Windows commit https://github.com/vim/vim/commit/f3dc235576da7394fbe743aba732f43289f32c24 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Jul 4 23:05:34 2018 +0200 patch 8.1.0152: cannot easily run individual tests on MS-Windows Problem: Cannot easily run individual tests on MS-Windows. Solution: Move the list of tests to a separate file. Add a build rule in the MSVC makefile.
author Christian Brabandt <cb@256bit.org>
date Wed, 04 Jul 2018 23:15:05 +0200
parents b8da7a3c2159
children ed2ac88f4b05
files Filelist src/Make_all.mak src/Make_mvc.mak src/Makefile src/version.c
diffstat 5 files changed, 220 insertions(+), 197 deletions(-) [+]
line wrap: on
line diff
--- a/Filelist
+++ b/Filelist
@@ -7,6 +7,7 @@ SRC_ALL =	\
 		.lgtm.yml \
 		.travis.yml \
 		appveyor.yml \
+		src/Make_all.mak \
 		src/appveyor.bat \
 		src/README.txt \
 		src/alloc.h \
new file mode 100644
--- /dev/null
+++ b/src/Make_all.mak
@@ -0,0 +1,203 @@
+#
+# Common Makefile, defines the list of tests to run.
+#
+
+# Individual tests, including the ones part of test_alot
+NEW_TESTS = \
+	test_arglist \
+	test_arabic \
+	test_assert \
+	test_assign \
+	test_autochdir \
+	test_autocmd \
+	test_autoload \
+	test_backspace_opt \
+	test_blockedit \
+	test_breakindent \
+	test_bufline \
+	test_bufwintabinfo \
+	test_cd \
+	test_cdo \
+	test_changedtick \
+	test_changelist \
+	test_channel \
+	test_charsearch \
+	test_charsearch_utf8 \
+	test_cindent \
+	test_clientserver \
+	test_close_count \
+	test_cmdline \
+	test_command_count \
+	test_comparators \
+	test_compiler \
+	test_crypt \
+	test_cscope \
+	test_cursor_func \
+	test_curswant \
+	test_delete \
+	test_diffmode \
+	test_digraph \
+	test_display \
+	test_edit \
+	test_erasebackword \
+	test_escaped_glob \
+	test_eval_stuff \
+	test_ex_undo \
+	test_ex_z \
+	test_exit \
+	test_exec_while_if \
+	test_execute_func \
+	test_exists \
+	test_exists_autocmd \
+	test_expand \
+	test_expand_dllpath \
+	test_expr \
+	test_expr_utf8 \
+	test_farsi \
+	test_feedkeys \
+	test_file_perm \
+	test_file_size \
+	test_fileformat \
+	test_filetype \
+	test_filter_cmd \
+	test_filter_map \
+	test_find_complete \
+	test_findfile \
+	test_fixeol \
+	test_float_func \
+	test_fnameescape \
+	test_fnamemodify \
+	test_fold \
+	test_functions \
+	test_ga \
+	test_getcwd \
+	test_getvar \
+	test_gf \
+	test_glob2regpat \
+	test_global \
+	test_gn \
+	test_goto \
+	test_gui \
+	test_gui_init \
+	test_hardcopy \
+	test_help \
+	test_help_tagjump \
+	test_hide \
+	test_highlight \
+	test_history \
+	test_hlsearch \
+	test_iminsert \
+	test_increment \
+	test_increment_dbcs \
+	test_ins_complete \
+	test_job_fails \
+	test_join \
+	test_json \
+	test_jumplist \
+	test_jumps \
+	test_lambda \
+	test_langmap \
+	test_largefile \
+	test_let \
+	test_lineending \
+	test_lispwords \
+	test_listchars \
+	test_listdict \
+	test_listlbr \
+	test_listlbr_utf8 \
+	test_lua \
+	test_makeencoding \
+	test_man \
+	test_maparg \
+	test_mapping \
+	test_marks \
+	test_match \
+	test_matchadd_conceal \
+	test_matchadd_conceal_utf8 \
+	test_menu \
+	test_messages \
+	test_mksession \
+	test_mksession_utf8 \
+	test_nested_function \
+	test_netbeans \
+	test_normal \
+	test_number \
+	test_options \
+	test_packadd \
+	test_partial \
+	test_paste \
+	test_perl \
+	test_plus_arg_edit \
+	test_popup \
+	test_preview \
+	test_profile \
+	test_prompt_buffer \
+	test_put \
+	test_python2 \
+	test_python3 \
+	test_pyx2 \
+	test_pyx3 \
+	test_quickfix \
+	test_quotestar \
+	test_recover \
+	test_regex_char_classes \
+	test_regexp_latin \
+	test_regexp_utf8 \
+	test_registers \
+	test_reltime \
+	test_retab \
+	test_ruby \
+	test_scroll_opt \
+	test_scrollbind \
+	test_search \
+	test_searchpos \
+	test_set \
+	test_sha256 \
+	test_signs \
+	test_smartindent \
+	test_sort \
+	test_source_utf8 \
+	test_spell \
+	test_startup \
+	test_startup_utf8 \
+	test_stat \
+	test_statusline \
+	test_substitute \
+	test_swap \
+	test_syn_attr \
+	test_syntax \
+	test_system \
+	test_tab \
+	test_tabline \
+	test_tabpage \
+	test_tagcase \
+	test_tagjump \
+	test_taglist \
+	test_tcl \
+	test_terminal \
+	test_terminal_fail \
+	test_textformat \
+	test_textobjects \
+	test_timers \
+	test_true_false \
+	test_undo \
+	test_unlet \
+	test_usercommands \
+	test_utf8 \
+	test_utf8_comparisons \
+	test_vartabs \
+	test_viminfo \
+	test_vimscript \
+	test_virtualedit \
+	test_visual \
+	test_winbar \
+	test_winbuf_close \
+	test_window_cmd \
+	test_window_id \
+	test_windows_home \
+	test_wordcount \
+	test_writefile \
+	test_xxd \
+	test_alot_latin \
+	test_alot_utf8 \
+	test_alot
--- a/src/Make_mvc.mak
+++ b/src/Make_mvc.mak
@@ -693,6 +693,8 @@ CFLAGS = $(CFLAGS) /Zl /MTd
 ! endif
 !endif # DEBUG
 
+!include Make_all.mak
+
 INCL =	vim.h alloc.h arabic.h ascii.h ex_cmds.h farsi.h feature.h globals.h \
 	keymap.h macros.h option.h os_dos.h os_win32.h proto.h regexp.h \
 	spell.h structs.h term.h beval.h $(NBDEBUG_INCL)
@@ -1296,6 +1298,14 @@ testclean:
 	$(MAKE) /NOLOGO -f Make_dos.mak clean
 	cd ..
 
+$(NEW_TESTS):
+	cd testdir
+	- if exist $@.res del $@.res
+	$(MAKE) /NOLOGO -f Make_dos.mak nolog
+	$(MAKE) /NOLOGO -f Make_dos.mak $@.res
+	$(MAKE) /NOLOGO -f Make_dos.mak report
+	cd ..
+
 ###########################################################################
 
 # Create a default rule for transforming .c files to .obj files in $(OUTDIR)
--- a/src/Makefile
+++ b/src/Makefile
@@ -1524,6 +1524,9 @@ DEST_MAN_PL_U = $(DEST_MAN_TOP)/pl.UTF-8
 DEST_MAN_RU = $(DEST_MAN_TOP)/ru.KOI8-R$(MAN1DIR)
 DEST_MAN_RU_U = $(DEST_MAN_TOP)/ru.UTF-8$(MAN1DIR)
 
+# The list of tests is common to all systems.
+include Make_all.mak
+
 #	     BASIC_SRC: files that are always used
 #	       GUI_SRC: extra GUI files for current configuration
 #	   ALL_GUI_SRC: all GUI files for Unix
@@ -2125,203 +2128,7 @@ test1 \
 
 # Run individual NEW style test.
 # These do not depend on the executable, compile it when needed.
-test_arglist \
-	test_arabic \
-	test_assert \
-	test_assign \
-	test_autochdir \
-	test_autocmd \
-	test_autoload \
-	test_backspace_opt \
-	test_blockedit \
-	test_breakindent \
-	test_bufline \
-	test_bufwintabinfo \
-	test_cd \
-	test_cdo \
-	test_changedtick \
-	test_changelist \
-	test_channel \
-	test_charsearch \
-	test_charsearch_utf8 \
-	test_cindent \
-	test_clientserver \
-	test_close_count \
-	test_cmdline \
-	test_command_count \
-	test_comparators \
-	test_compiler \
-	test_crypt \
-	test_cscope \
-	test_cursor_func \
-	test_curswant \
-	test_delete \
-	test_diffmode \
-	test_digraph \
-	test_display \
-	test_edit \
-	test_erasebackword \
-	test_escaped_glob \
-	test_eval_stuff \
-	test_ex_undo \
-	test_ex_z \
-	test_exit \
-	test_exec_while_if \
-	test_execute_func \
-	test_exists \
-	test_exists_autocmd \
-	test_expand \
-	test_expand_dllpath \
-	test_expr \
-	test_expr_utf8 \
-	test_farsi \
-	test_feedkeys \
-	test_file_perm \
-	test_file_size \
-	test_fileformat \
-	test_filetype \
-	test_filter_cmd \
-	test_filter_map \
-	test_find_complete \
-	test_findfile \
-	test_fixeol \
-	test_float_func \
-	test_fnameescape \
-	test_fnamemodify \
-	test_fold \
-	test_functions \
-	test_ga \
-	test_getcwd \
-	test_getvar \
-	test_gf \
-	test_glob2regpat \
-	test_global \
-	test_gn \
-	test_goto \
-	test_gui \
-	test_gui_init \
-	test_hardcopy \
-	test_help \
-	test_help_tagjump \
-	test_hide \
-	test_highlight \
-	test_history \
-	test_hlsearch \
-	test_iminsert \
-	test_increment \
-	test_increment_dbcs \
-	test_ins_complete \
-	test_job_fails \
-	test_join \
-	test_json \
-	test_jumplist \
-	test_jumps \
-	test_lambda \
-	test_langmap \
-	test_largefile \
-	test_let \
-	test_lineending \
-	test_lispwords \
-	test_listchars \
-	test_listdict \
-	test_listlbr \
-	test_listlbr_utf8 \
-	test_lua \
-	test_makeencoding \
-	test_man \
-	test_maparg \
-	test_mapping \
-	test_marks \
-	test_match \
-	test_matchadd_conceal \
-	test_matchadd_conceal_utf8 \
-	test_menu \
-	test_messages \
-	test_mksession \
-	test_mksession_utf8 \
-	test_nested_function \
-	test_netbeans \
-	test_normal \
-	test_number \
-	test_options \
-	test_packadd \
-	test_partial \
-	test_paste \
-	test_perl \
-	test_plus_arg_edit \
-	test_popup \
-	test_preview \
-	test_profile \
-	test_prompt_buffer \
-	test_put \
-	test_python2 \
-	test_python3 \
-	test_pyx2 \
-	test_pyx3 \
-	test_quickfix \
-	test_quotestar \
-	test_recover \
-	test_regex_char_classes \
-	test_regexp_latin \
-	test_regexp_utf8 \
-	test_registers \
-	test_reltime \
-	test_retab \
-	test_ruby \
-	test_scroll_opt \
-	test_scrollbind \
-	test_search \
-	test_searchpos \
-	test_set \
-	test_sha256 \
-	test_signs \
-	test_smartindent \
-	test_sort \
-	test_source_utf8 \
-	test_spell \
-	test_startup \
-	test_startup_utf8 \
-	test_stat \
-	test_statusline \
-	test_substitute \
-	test_swap \
-	test_syn_attr \
-	test_syntax \
-	test_system \
-	test_tab \
-	test_tabline \
-	test_tabpage \
-	test_tagcase \
-	test_tagjump \
-	test_taglist \
-	test_tcl \
-	test_terminal \
-	test_terminal_fail \
-	test_textformat \
-	test_textobjects \
-	test_timers \
-	test_true_false \
-	test_undo \
-	test_unlet \
-	test_usercommands \
-	test_utf8 \
-	test_utf8_comparisons \
-	test_vartabs \
-	test_viminfo \
-	test_vimscript \
-	test_virtualedit \
-	test_visual \
-	test_winbar \
-	test_winbuf_close \
-	test_window_cmd \
-	test_window_id \
-	test_windows_home \
-	test_wordcount \
-	test_writefile \
-	test_xxd \
-	test_alot_latin \
-	test_alot_utf8 \
-	test_alot:
+$(NEW_TESTS):
 	cd testdir; rm -f $@.res test.log messages; $(MAKE) -f Makefile $@.res VIMPROG=../$(VIMTESTTARGET) $(GUI_TESTARG) SCRIPTSOURCE=../$(SCRIPTSOURCE)
 	@if test -f testdir/test.log; then \
 		cat testdir/test.log; \
--- a/src/version.c
+++ b/src/version.c
@@ -790,6 +790,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    152,
+/**/
     151,
 /**/
     150,