diff options
author | Bram Moolenaar <Bram@vim.org> | 2015-02-27 21:11:02 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2015-02-27 21:11:02 +0100 |
commit | 13cf77ba1715803355029ed119e55a12f6865db1 (patch) | |
tree | 4670a77b744b21cb2ca371de6b8f5be65a8b5581 | |
parent | e25bb90b2eb0ceed2caa5202ca62003e367021ae (diff) | |
download | vim-13cf77ba1715803355029ed119e55a12f6865db1.zip |
updated for version 7.4.647
Problem: After running the tests on MS-Windows many files differ from their
originals as they were checked out.
Solution: Use a temp directory for executing the tests. (Ken Takata, Taro
Muraoka)
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | src/testdir/Make_dos.mak | 79 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 53 insertions, 30 deletions
diff --git a/.gitignore b/.gitignore index f247dd198..f0db64d17 100644 --- a/.gitignore +++ b/.gitignore @@ -69,5 +69,7 @@ src/testdir/lua.vim src/testdir/small.vim src/testdir/tiny.vim src/testdir/test*.out +src/testdir/test*.failed src/testdir/test.log +src/testdir/dostmp/* src/memfile_test diff --git a/src/testdir/Make_dos.mak b/src/testdir/Make_dos.mak index 51574deeb..55bf77ec6 100644 --- a/src/testdir/Make_dos.mak +++ b/src/testdir/Make_dos.mak @@ -56,32 +56,64 @@ SCRIPTS = test3.out test4.out test5.out test6.out test7.out \ SCRIPTS32 = test50.out test70.out -SCRIPTS_GUI = test16.out +SCRIPTS_GUI = test16.out -.SUFFIXES: .in .out - -nongui: fixff $(SCRIPTS16) $(SCRIPTS) report - -small: report - -gui: fixff $(SCRIPTS16) $(SCRIPTS) $(SCRIPTS_GUI) report +TEST_OUTFILES = $(SCRIPTS16) $(SCRIPTS) $(SCRIPTS32) $(SCRIPTS_GUI) +DOSTMP = dostmp +DOSTMP_OUTFILES = $(TEST_OUTFILES:test=dostmp\test) +DOSTMP_INFILES = $(DOSTMP_OUTFILES:.out=.in) -win32: fixff $(SCRIPTS16) $(SCRIPTS) $(SCRIPTS32) report +.SUFFIXES: .in .out -fixff: - -$(VIMPROG) -u dos.vim --noplugin "+argdo set ff=dos|upd" +q *.in *.ok - -$(VIMPROG) -u dos.vim --noplugin "+argdo set ff=unix|upd" +q \ - dotest.in test60.ok test71.ok test74.ok test100.ok +nongui: nolog $(SCRIPTS16) $(SCRIPTS) report + +small: nolog report + +gui: nolog $(SCRIPTS16) $(SCRIPTS) $(SCRIPTS_GUI) report + +win32: nolog $(SCRIPTS16) $(SCRIPTS) $(SCRIPTS32) report + +# Copy the input files to dostmp, changing the fileformat to dos. +$(DOSTMP_INFILES): $(*B).in + if not exist $(DOSTMP)\NUL md $(DOSTMP) + if exist $@ del $@ + $(VIMPROG) -u dos.vim --noplugin "+set ff=dos|f $@|wq" $(*B).in + +# For each input file dostmp/test99.in run the tests. +# This moves test99.in to test99.in.bak temporarily. +$(TEST_OUTFILES): $(DOSTMP)\$(*B).in + -@if exist test.out DEL test.out + move $(*B).in $(*B).in.bak + copy $*.in $(*B).in + copy $(DOSTMP)\$(*B).in $(*B).in + copy $(*B).ok test.ok + $(VIMPROG) -u dos.vim -U NONE --noplugin -s dotest.in $(*B).in + -@if exist test.out MOVE /y test.out $(DOSTMP)\$(*B).out + -@if exist $(*B).in.bak move /y $(*B).in.bak $(*B).in + -@del X* + -@if exist test.ok del test.ok + -@if exist Xdir1 rd /s /q Xdir1 + -@if exist Xfind rd /s /q Xfind + -@if exist viminfo del viminfo + $(VIMPROG) -u dos.vim --noplugin "+set ff=unix|f test.out|wq" \ + $(DOSTMP)\$(*B).out + @diff test.out $*.ok & if errorlevel 1 \ + ( move /y test.out $*.failed \ + & del $(DOSTMP)\$(*B).out \ + & echo $* FAILED >> test.log ) \ + else ( move /y test.out $*.out ) report: @echo "" @echo Test results: - @IF EXIST test.log ( type test.log & echo TEST FAILURE & exit /b 1 ) \ - ELSE ( ECHO ALL DONE ) + @if exist test.log ( type test.log & echo TEST FAILURE & exit /b 1 ) \ + else ( echo ALL DONE ) clean: -del *.out -del *.failed + -if exist $(DOSTMP) rd /s /q $(DOSTMP) + -if exist test.in del test.in -if exist test.ok del test.ok -if exist small.vim del small.vim -if exist tiny.vim del tiny.vim @@ -92,24 +124,11 @@ clean: -if exist Xdir1 rd /s /q Xdir1 -if exist Xfind rd /s /q Xfind -if exist viminfo del viminfo - -del test.log + -if exist test.log del test.log -if exist benchmark.out del benchmark.out -.in.out: - -if exist $*.failed del $*.failed - copy $*.ok test.ok - $(VIMPROG) -u dos.vim -U NONE --noplugin -s dotest.in $*.in - @diff test.out $*.ok & if errorlevel 1 \ - ( move /y test.out $*.failed & echo $* FAILED >> test.log ) \ - else ( move /y test.out $*.out ) - -del X* - -del test.ok - -if exist Xdir1 rd /s /q Xdir1 - -if exist Xfind rd /s /q Xfind - -if exist viminfo del viminfo - nolog: - -del test.log + -if exist test.log del test.log benchmark: bench_re_freeze.out diff --git a/src/version.c b/src/version.c index 53b6cdb1e..21215ae3a 100644 --- a/src/version.c +++ b/src/version.c @@ -742,6 +742,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 647, +/**/ 646, /**/ 645, |