diff src/testdir/test50.in @ 7:3fc0f57ecb91 v7.0001

updated for version 7.0001
author vimboss
date Sun, 13 Jun 2004 20:20:40 +0000
parents
children 5cd32322154c
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/src/testdir/test50.in
@@ -0,0 +1,85 @@
+Test for shortpathname ':8' extension.
+Only for use on Win32 systems!
+
+STARTTEST
+:so small.vim
+:fun! TestIt(file, bits, expected)
+	let res=fnamemodify(a:file,a:bits)
+	if a:expected == ''
+		echo "'".a:file."'->(".a:bits.")->'".res."'"
+	else
+		if substitute(res,'/','\\', 'g') != substitute( a:expected, '/','\\', 'g') 
+			echo "FAILED: '".a:file."'->(".a:bits.")->'".res."'"
+			echo "Expected: '".a:expected."'"
+		else
+			echo "OK"
+		endif
+	endif
+endfun
+:fun! MakeDir( dirname )
+	"exe '!mkdir '.substitute(a:dirname,'/','\\','g')
+	call system('mkdir '.substitute(a:dirname,'/','\\','g'))
+endfun
+:fun! RMDir( dirname)
+	"exe '!rmdir '.substitute(a:dirname,'/','\\','g')
+	call system('rmdir '.substitute(a:dirname,'/','\\','g'))
+endfun
+:fun! MakeFile( filename)
+	"exe '!copy nul '.substitute(a:filename,'/','\\','g')
+	call system('copy nul '.substitute(a:filename,'/','\\','g'))
+endfun
+:fun! TestColonEight()
+   redir! >test.out
+	" 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" )
+		return
+	endif
+	let file1=dir1.'/zz.y.txt'
+	let nofile1=dir1.'/z.y.txt'
+	let dir2=dir1.'/VimIsTheGreatestSinceSlicedBread'
+	let file2=dir2.'/z.txt'
+	let nofile2=dir2.'/zz.txt'
+	let resdir1='c:/XX2235~1.Y'
+	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 )
+	call TestIt(file1, ':p:8', resfile1)
+	call TestIt(nofile1, ':p:8', resnofile1)
+	call TestIt(file2, ':p:8', resfile2)
+	call TestIt(nofile2, ':p:8', resnofile2)
+	call TestIt(nofile2, ':p:8:h', fnamemodify(resnofile2,':h'))
+	exe 'cd '.dir1
+	call TestIt(file1, ':.:8', strpart(resfile1,strlen(resdir1)+1))
+	call TestIt(nofile1, ':.:8', strpart(resnofile1,strlen(resdir1)+1))
+	call TestIt(file2, ':.:8', strpart(resfile2,strlen(resdir1)+1))
+	call TestIt(nofile2, ':.:8', strpart(resnofile2,strlen(resdir1)+1))
+	let $HOME=dir1
+	call TestIt(file1, ':~:8', '~'.strpart(resfile1,strlen(resdir1)))
+	call TestIt(nofile1, ':~:8', '~'.strpart(resnofile1,strlen(resdir1)))
+	call TestIt(file2, ':~:8', '~'.strpart(resfile2,strlen(resdir1)))
+	call TestIt(nofile2, ':~:8', '~'.strpart(resnofile2,strlen(resdir1)))
+	cd c:/
+	call delete( file2 )
+	call delete( file1 )
+	call RMDir( dir2 )
+	call RMDir( dir1 )
+       echo
+   redir END
+endfun
+:let dir = getcwd()
+:call TestColonEight()
+:exe "cd " . dir
+:edit! test.out
+:set ff=dos
+:w
+:qa!
+ENDTEST
+