]> granicus.if.org Git - vim/commitdiff
updated for version 7.3.1223 v7.3.1223
authorBram Moolenaar <Bram@vim.org>
Wed, 19 Jun 2013 19:17:31 +0000 (21:17 +0200)
committerBram Moolenaar <Bram@vim.org>
Wed, 19 Jun 2013 19:17:31 +0000 (21:17 +0200)
Problem:    Tests fail on MS-Windows.
Solution:   Avoid depending on OS version. Use DOS commands instead of Unix
            commands. (Taro Muraoka, Ken Takata)

src/testdir/test17.in
src/testdir/test50.in
src/testdir/test71.in
src/testdir/test77.in
src/version.c

index 9c25e99917bff6c9bc35ae6907159b9f33a80aeb..9bc1d02270900daeef6ad8c10e37502e9441ccb2 100644 (file)
@@ -9,6 +9,13 @@ STARTTEST
 :else
 : set isfname=@,48-57,/,.,-,_,+,,,$,:,~,{,}
 :endif
+:function! DeleteDirectory(dir)
+: if has("win16") || has("win32") || has("win64") || has("dos16") || has("dos32")
+:  exec "silent !rmdir /Q /S " . a:dir
+: else
+:  exec "silent !rm -rf " . a:dir
+: endif
+:endfun
 :if has("unix")
 :let $CDIR = "."
 /CDIR
@@ -20,6 +27,11 @@ STARTTEST
 :endif
 /TDIR
 :endif
+:" Dummy writing for making that sure gf doesn't fail even if the current
+:" file is modified. It can be occurred when executing the following command
+:" directly on Windows without fixing the 'fileformat':
+:"  > nmake -f Make_dos.mak test17.out
+:w! test.out
 gf
 :w! test.out
 :brewind
@@ -31,10 +43,11 @@ ENDTEST
 STARTTEST
 :" check for 'include' without \zs or \ze
 :lang C
-:!rm -f ./Xbase.a
-:!rm -rf ./Xdir1
-:!mkdir -p Xdir1/dir2
-:e Xdir1/dir2/foo.a
+:call delete("./Xbase.a")
+:call DeleteDirectory("Xdir1")
+:!mkdir Xdir1
+:!mkdir "Xdir1/dir2"
+:e! Xdir1/dir2/foo.a
 i#include   "bar.a"\e
 :w
 :e Xdir1/dir2/bar.a
@@ -55,15 +68,16 @@ ENDTEST
 
 STARTTEST
 :" check for 'include' with \zs and \ze
-:!rm -f ./Xbase.b
-:!rm -rf ./Xdir1
-:!mkdir -p Xdir1/dir2
+:call delete("./Xbase.b")
+:call DeleteDirectory("Xdir1")
+:!mkdir Xdir1
+:!mkdir "Xdir1/dir2"
 :let &include='^\s*%inc\s*/\zs[^/]\+\ze'
 :function! DotsToSlashes()
 :  return substitute(v:fname, '\.', '/', 'g') . '.b'
 :endfunction
 :let &includeexpr='DotsToSlashes()'
-:e Xdir1/dir2/foo.b
+:e! Xdir1/dir2/foo.b
 i%inc   /bar/\e
 :w
 :e Xdir1/dir2/bar.b
@@ -84,9 +98,10 @@ ENDTEST
 
 STARTTEST
 :" check for 'include' with \zs and no \ze
-:!rm -f ./Xbase.c
-:!rm -rf ./Xdir1
-:!mkdir -p Xdir1/dir2
+:call delete("./Xbase.c")
+:call DeleteDirectory("Xdir1")
+:!mkdir Xdir1
+:!mkdir "Xdir1/dir2"
 :let &include='^\s*%inc\s*\%([[:upper:]][^[:space:]]*\s\+\)\?\zs\S\+\ze'
 :function! StripNewlineChar()
 :  if v:fname =~ '\n$'
@@ -95,7 +110,7 @@ STARTTEST
 :  return v:fname
 :endfunction
 :let &includeexpr='StripNewlineChar()'
-:e Xdir1/dir2/foo.c
+:e! Xdir1/dir2/foo.c
 i%inc   bar.c\e
 :w
 :e Xdir1/dir2/bar.c
@@ -115,6 +130,10 @@ i%inc    FALSE.c foo.c\e
 :checkpath!
 :redir END
 :brewind
+:" replace "\" to "/" for Windows
+:e test.out
+:%s#\\#/#g
+:w
 :q
 ENDTEST
 
index d78ac8e8f82f13cb45e7d8f27317461d8d1bf876..0cbf4bf6d6ad5556c20ff18c3419abeced890e32 100644 (file)
@@ -33,7 +33,7 @@ endfun
        " This could change for CygWin to //cygdrive/c
        let dir1='c:/x.x.y'
        if filereadable(dir1) || isdirectory(dir1)
-               call confirm( "'".dir1."' exists, cannot run test" )
+               echo "FATAL: '".dir1."' exists, cannot run test"
                return
        endif
        let file1=dir1.'/zz.y.txt'
@@ -41,13 +41,18 @@ endfun
        let dir2=dir1.'/VimIsTheGreatestSinceSlicedBread'
        let file2=dir2.'/z.txt'
        let nofile2=dir2.'/zz.txt'
-       let resdir1='c:/XX2235~1.Y'
+       call MakeDir( dir1 )
+       let resdir1 = substitute(fnamemodify(dir1, ':p:8'), '\\$', '', '')
+       if resdir1 !~ '\V\^c:/XX\x\x\x\x~1.Y\$'
+               echo "FATAL: unexpected short name: " . resdir1
+               echo "INFO: please report your OS to vim-dev"
+               return
+       endif
        let resfile1=resdir1.'/ZZY~1.TXT'
        let resnofile1=resdir1.'/z.y.txt'
        let resdir2=resdir1.'/VIMIST~1'
        let resfile2=resdir2.'/z.txt'
        let resnofile2=resdir2.'/zz.txt'
-       call MakeDir( dir1 )
        call MakeDir( dir2 )
        call MakeFile( file1 )
        call MakeFile( file2 )
index 7de293054b5c64e0f0485f52a3106ab87442ba34..c7e0714e1cff637dccccd9870ab1c9da4a0c2a90 100644 (file)
@@ -8,7 +8,7 @@ STARTTEST
 :let cm0_bytes = getline('.', '.')
 :/^start of cm=blowfish bytes/+1
 :let cm1_bytes = getline('.', '.')
-:bwipe
+:bwipe!
 :call append(0, text_lines)
 :$d
 :X
index 8ac7e10fcafc4597301f7dc91e634e0df1c6f54d..0dbc4fcbafc268bcfcb90bd3b55f8948bef9bf3c 100644 (file)
@@ -23,6 +23,7 @@ ggdd
 :w! Xtest
 :r !cksum Xtest
 :s/\s/ /g
+:set fileformat&
 :.w! test.out
 :qa!
 ENDTEST
index 2adb4886d54767e967537b621d86f9611ab0e950..9a484dd0864dfd9fd811509ae242ddcd53e524e1 100644 (file)
@@ -728,6 +728,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1223,
 /**/
     1222,
 /**/