mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
vim-patch:8.1.1285: test17 is old style
Problem: Test17 is old style.
Solution: Turn into new style test. (Yegappan Lakshmanan, closes vim/vim#4347)
f0ab01f6d8
This commit is contained in:
parent
5a714c53f2
commit
210d803777
@ -22,7 +22,6 @@ SCRIPTS_DEFAULT = \
|
|||||||
|
|
||||||
ifneq ($(OS),Windows_NT)
|
ifneq ($(OS),Windows_NT)
|
||||||
SCRIPTS_DEFAULTS := $(SCRIPTS_DEFAULT) \
|
SCRIPTS_DEFAULTS := $(SCRIPTS_DEFAULT) \
|
||||||
test17.out \
|
|
||||||
test49.out \
|
test49.out \
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
@ -1,126 +0,0 @@
|
|||||||
Tests for:
|
|
||||||
- "gf" on ${VAR},
|
|
||||||
- ":checkpath!" with various 'include' settings.
|
|
||||||
|
|
||||||
STARTTEST
|
|
||||||
:set isfname=@,48-57,/,.,-,_,+,,,$,:,~,{,}
|
|
||||||
:"
|
|
||||||
:if has("unix")
|
|
||||||
:let $CDIR = "."
|
|
||||||
/CDIR
|
|
||||||
:else
|
|
||||||
:let $TDIR = "."
|
|
||||||
/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
|
|
||||||
|
|
@ -1,33 +0,0 @@
|
|||||||
This file is just to test "gf" in test 17.
|
|
||||||
The contents is not important.
|
|
||||||
Just testing!
|
|
||||||
|
|
||||||
|
|
||||||
--- Included files in path ---
|
|
||||||
Xdir1/dir2/foo.a
|
|
||||||
Xdir1/dir2/foo.a -->
|
|
||||||
Xdir1/dir2/bar.a
|
|
||||||
Xdir1/dir2/bar.a -->
|
|
||||||
Xdir1/dir2/baz.a
|
|
||||||
Xdir1/dir2/baz.a -->
|
|
||||||
"foo.a" (Already listed)
|
|
||||||
|
|
||||||
|
|
||||||
--- Included files in path ---
|
|
||||||
Xdir1/dir2/foo.b
|
|
||||||
Xdir1/dir2/foo.b -->
|
|
||||||
Xdir1/dir2/bar.b
|
|
||||||
Xdir1/dir2/bar.b -->
|
|
||||||
Xdir1/dir2/baz.b
|
|
||||||
Xdir1/dir2/baz.b -->
|
|
||||||
foo (Already listed)
|
|
||||||
|
|
||||||
|
|
||||||
--- Included files in path ---
|
|
||||||
Xdir1/dir2/foo.c
|
|
||||||
Xdir1/dir2/foo.c -->
|
|
||||||
Xdir1/dir2/bar.c
|
|
||||||
Xdir1/dir2/bar.c -->
|
|
||||||
Xdir1/dir2/baz.c
|
|
||||||
Xdir1/dir2/baz.c -->
|
|
||||||
foo.c (Already listed)
|
|
@ -1,3 +0,0 @@
|
|||||||
This file is just to test "gf" in test 17.
|
|
||||||
The contents is not important.
|
|
||||||
Just testing!
|
|
113
src/nvim/testdir/test_checkpath.vim
Normal file
113
src/nvim/testdir/test_checkpath.vim
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
" Tests for the :checkpath command
|
||||||
|
|
||||||
|
" Test for 'include' without \zs or \ze
|
||||||
|
func Test_checkpath1()
|
||||||
|
let save_shellslash = &shellslash
|
||||||
|
set shellslash
|
||||||
|
call mkdir("Xdir1/dir2", "p")
|
||||||
|
call writefile(['#include "bar.a"'], 'Xdir1/dir2/foo.a')
|
||||||
|
call writefile(['#include "baz.a"'], 'Xdir1/dir2/bar.a')
|
||||||
|
call writefile(['#include "foo.a"'], 'Xdir1/dir2/baz.a')
|
||||||
|
call writefile(['#include <foo.a>'], 'Xbase.a')
|
||||||
|
|
||||||
|
edit Xbase.a
|
||||||
|
set path=Xdir1/dir2
|
||||||
|
let res = split(execute("checkpath!"), "\n")
|
||||||
|
call assert_equal([
|
||||||
|
\ '--- Included files in path ---',
|
||||||
|
\ 'Xdir1/dir2/foo.a',
|
||||||
|
\ 'Xdir1/dir2/foo.a -->',
|
||||||
|
\ ' Xdir1/dir2/bar.a',
|
||||||
|
\ ' Xdir1/dir2/bar.a -->',
|
||||||
|
\ ' Xdir1/dir2/baz.a',
|
||||||
|
\ ' Xdir1/dir2/baz.a -->',
|
||||||
|
\ ' "foo.a" (Already listed)'], res)
|
||||||
|
|
||||||
|
enew
|
||||||
|
call delete("./Xbase.a")
|
||||||
|
call delete("Xdir1", "rf")
|
||||||
|
set path&
|
||||||
|
let &shellslash = save_shellslash
|
||||||
|
endfunc
|
||||||
|
|
||||||
|
func DotsToSlashes()
|
||||||
|
return substitute(v:fname, '\.', '/', 'g') . '.b'
|
||||||
|
endfunc
|
||||||
|
|
||||||
|
" Test for 'include' with \zs and \ze
|
||||||
|
func Test_checkpath2()
|
||||||
|
let save_shellslash = &shellslash
|
||||||
|
set shellslash
|
||||||
|
call mkdir("Xdir1/dir2", "p")
|
||||||
|
call writefile(['%inc /bar/'], 'Xdir1/dir2/foo.b')
|
||||||
|
call writefile(['%inc /baz/'], 'Xdir1/dir2/bar.b')
|
||||||
|
call writefile(['%inc /foo/'], 'Xdir1/dir2/baz.b')
|
||||||
|
call writefile(['%inc /foo/'], 'Xbase.b')
|
||||||
|
|
||||||
|
let &include='^\s*%inc\s*/\zs[^/]\+\ze'
|
||||||
|
let &includeexpr='DotsToSlashes()'
|
||||||
|
|
||||||
|
edit Xbase.b
|
||||||
|
set path=Xdir1/dir2
|
||||||
|
let res = split(execute("checkpath!"), "\n")
|
||||||
|
call assert_equal([
|
||||||
|
\ '--- Included files in path ---',
|
||||||
|
\ 'Xdir1/dir2/foo.b',
|
||||||
|
\ 'Xdir1/dir2/foo.b -->',
|
||||||
|
\ ' Xdir1/dir2/bar.b',
|
||||||
|
\ ' Xdir1/dir2/bar.b -->',
|
||||||
|
\ ' Xdir1/dir2/baz.b',
|
||||||
|
\ ' Xdir1/dir2/baz.b -->',
|
||||||
|
\ ' foo (Already listed)'], res)
|
||||||
|
|
||||||
|
enew
|
||||||
|
call delete("./Xbase.b")
|
||||||
|
call delete("Xdir1", "rf")
|
||||||
|
set path&
|
||||||
|
set include&
|
||||||
|
set includeexpr&
|
||||||
|
let &shellslash = save_shellslash
|
||||||
|
endfunc
|
||||||
|
|
||||||
|
func StripNewlineChar()
|
||||||
|
if v:fname =~ '\n$'
|
||||||
|
return v:fname[:-2]
|
||||||
|
endif
|
||||||
|
return v:fname
|
||||||
|
endfunc
|
||||||
|
|
||||||
|
" Test for 'include' with \zs and no \ze
|
||||||
|
func Test_checkpath3()
|
||||||
|
let save_shellslash = &shellslash
|
||||||
|
set shellslash
|
||||||
|
call mkdir("Xdir1/dir2", "p")
|
||||||
|
call writefile(['%inc bar.c'], 'Xdir1/dir2/foo.c')
|
||||||
|
call writefile(['%inc baz.c'], 'Xdir1/dir2/bar.c')
|
||||||
|
call writefile(['%inc foo.c'], 'Xdir1/dir2/baz.c')
|
||||||
|
call writefile(['%inc foo.c'], 'Xdir1/dir2/FALSE.c')
|
||||||
|
call writefile(['%inc FALSE.c foo.c'], 'Xbase.c')
|
||||||
|
|
||||||
|
let &include='^\s*%inc\s*\%([[:upper:]][^[:space:]]*\s\+\)\?\zs\S\+\ze'
|
||||||
|
let &includeexpr='StripNewlineChar()'
|
||||||
|
|
||||||
|
edit Xbase.c
|
||||||
|
set path=Xdir1/dir2
|
||||||
|
let res = split(execute("checkpath!"), "\n")
|
||||||
|
call assert_equal([
|
||||||
|
\ '--- Included files in path ---',
|
||||||
|
\ 'Xdir1/dir2/foo.c',
|
||||||
|
\ 'Xdir1/dir2/foo.c -->',
|
||||||
|
\ ' Xdir1/dir2/bar.c',
|
||||||
|
\ ' Xdir1/dir2/bar.c -->',
|
||||||
|
\ ' Xdir1/dir2/baz.c',
|
||||||
|
\ ' Xdir1/dir2/baz.c -->',
|
||||||
|
\ ' foo.c (Already listed)'], res)
|
||||||
|
|
||||||
|
enew
|
||||||
|
call delete("./Xbase.c")
|
||||||
|
call delete("Xdir1", "rf")
|
||||||
|
set path&
|
||||||
|
set include&
|
||||||
|
set includeexpr&
|
||||||
|
let &shellslash = save_shellslash
|
||||||
|
endfunc
|
@ -64,3 +64,38 @@ func Test_gF()
|
|||||||
bwipe Xfile
|
bwipe Xfile
|
||||||
bwipe Xfile2
|
bwipe Xfile2
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
" Test for invoking 'gf' on a ${VAR} variable
|
||||||
|
func Test_gf()
|
||||||
|
if has("ebcdic")
|
||||||
|
set isfname=@,240-249,/,.,-,_,+,,,$,:,~,{,}
|
||||||
|
else
|
||||||
|
set isfname=@,48-57,/,.,-,_,+,,,$,:,~,{,}
|
||||||
|
endif
|
||||||
|
|
||||||
|
call writefile(["Test for gf command"], "Xtest1")
|
||||||
|
if has("unix")
|
||||||
|
call writefile([" ${CDIR}/Xtest1"], "Xtestgf")
|
||||||
|
else
|
||||||
|
call writefile([" $TDIR/Xtest1"], "Xtestgf")
|
||||||
|
endif
|
||||||
|
new Xtestgf
|
||||||
|
if has("unix")
|
||||||
|
let $CDIR = "."
|
||||||
|
/CDIR
|
||||||
|
else
|
||||||
|
if has("amiga")
|
||||||
|
let $TDIR = "/testdir"
|
||||||
|
else
|
||||||
|
let $TDIR = "."
|
||||||
|
endif
|
||||||
|
/TDIR
|
||||||
|
endif
|
||||||
|
|
||||||
|
normal gf
|
||||||
|
call assert_equal('Xtest1', fnamemodify(bufname(''), ":t"))
|
||||||
|
close!
|
||||||
|
|
||||||
|
call delete('Xtest1')
|
||||||
|
call delete('Xtestgf')
|
||||||
|
endfunc
|
||||||
|
Loading…
Reference in New Issue
Block a user