1
0
forked from aniani/vim
Files
vim/src/testdir/test17.in
Bram Moolenaar abc70bbf36 patch 7.4.1910
Problem:    Tests using external command to delete directory.
Solution:   Use delete().
2016-06-08 21:48:50 +02:00

136 lines
2.4 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Tests for:
- "gf" on ${VAR},
- ":checkpath!" with various 'include' settings.
STARTTEST
:so small.vim
:if has("ebcdic")
: set isfname=@,240-249,/,.,-,_,+,,,$,:,~,{,}
:else
: set isfname=@,48-57,/,.,-,_,+,,,$,:,~,{,}
:endif
:"
:if has("unix")
:let $CDIR = "."
/CDIR
:else
:if has("amiga")
:let $TDIR = "/testdir"
:else
:let $TDIR = "."
: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
:set ff=unix
:w! test.out
:brewind
ENDTEST
${CDIR}/test17a.in
$TDIR/test17a.in
STARTTEST
:" check for 'include' without \zs or \ze
:lang C
:call delete("./Xbase.a")
:call delete("Xdir1", "rf")
:!mkdir Xdir1
:!mkdir "Xdir1/dir2"
:e! Xdir1/dir2/foo.a
i#include "bar.a":
:w
:e Xdir1/dir2/bar.a
i#include "baz.a":
:w
:e Xdir1/dir2/baz.a
i#include "foo.a":
:w
:e Xbase.a
:set path=Xdir1/dir2
i#include <foo.a>:
:w
:redir! >>test.out
:checkpath!
:redir END
:brewind
ENDTEST
STARTTEST
:" check for 'include' with \zs and \ze
:call delete("./Xbase.b")
:call delete("Xdir1", "rf")
:!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
i%inc /bar/:
:w
:e Xdir1/dir2/bar.b
i%inc /baz/:
:w
:e Xdir1/dir2/baz.b
i%inc /foo/:
:w
:e Xbase.b
:set path=Xdir1/dir2
i%inc /foo/:
:w
:redir! >>test.out
:checkpath!
:redir END
:brewind
ENDTEST
STARTTEST
:" check for 'include' with \zs and no \ze
:call delete("./Xbase.c")
:call delete("Xdir1", "rf")
:!mkdir Xdir1
:!mkdir "Xdir1/dir2"
:let &include='^\s*%inc\s*\%([[:upper:]][^[:space:]]*\s\+\)\?\zs\S\+\ze'
:function! StripNewlineChar()
: if v:fname =~ '\n$'
: return v:fname[:-2]
: endif
: return v:fname
:endfunction
:let &includeexpr='StripNewlineChar()'
:e! Xdir1/dir2/foo.c
i%inc bar.c:
:w
:e Xdir1/dir2/bar.c
i%inc baz.c:
:w
:e Xdir1/dir2/baz.c
i%inc foo.c:
:w
:e Xdir1/dir2/FALSE.c
i%inc foo.c:
:w
:e Xbase.c
:set path=Xdir1/dir2
i%inc FALSE.c foo.c:
:w
:redir! >>test.out
:checkpath!
:redir END
:brewind
:" change "\" to "/" for Windows and fix 'fileformat'
:e test.out
:%s#\\#/#g
:set ff&
:w
:q
ENDTEST