mirror of
https://github.com/SpaceVim/SpaceVim.git
synced 2025-01-24 03:00:06 +08:00
81 lines
2.5 KiB
VimL
Vendored
81 lines
2.5 KiB
VimL
Vendored
fun! SetUp()
|
|
" disable builtin information
|
|
let g:php_builtin_classnames = {}
|
|
let g:php_builtin_classes = {}
|
|
let g:php_builtin_interfaces = {}
|
|
let g:php_builtin_interfacenames = {}
|
|
" disable tag files
|
|
exe ':set tags='
|
|
endf
|
|
|
|
fun! TestCase_return_VIMPHP_BUILTINOBJECT_when_classname_in_builtin_classes()
|
|
call SetUp()
|
|
|
|
let g:php_builtin_classnames = {'datetime': ''}
|
|
let g:php_builtin_classes = {
|
|
\'datetime':{}
|
|
\}
|
|
let res = phpcomplete#GetClassLocation('DateTime', '')
|
|
call VUAssertEquals('VIMPHP_BUILTINOBJECT', res)
|
|
|
|
let res = phpcomplete#GetClassLocation('DateTime', '\')
|
|
call VUAssertEquals('VIMPHP_BUILTINOBJECT', res)
|
|
endf
|
|
|
|
fun! TestCase_return_current_file_path_when_classname_found_in_previous_lines_of_current_buffer()
|
|
call SetUp()
|
|
|
|
let path = expand('%:p:h').'/'.'fixtures/GetClassLocation/foo.class.php'
|
|
below 1new
|
|
exe ":silent! edit ".path
|
|
|
|
exe ':6'
|
|
let res = phpcomplete#GetClassLocation('Foo', '')
|
|
call VUAssertEquals(path, res)
|
|
|
|
exe ':14'
|
|
let res = phpcomplete#GetClassLocation('Foo2', '')
|
|
call VUAssertEquals(path, res)
|
|
|
|
exe ':21'
|
|
let res = phpcomplete#GetClassLocation('Foo3', '')
|
|
call VUAssertEquals(path, res)
|
|
|
|
silent! bw! %
|
|
endf
|
|
|
|
fun! TestCase_return_class_location_from_tags()
|
|
call SetUp()
|
|
|
|
let tags_path = expand('%:p:h').'/'.'fixtures/GetClassLocation/tags'
|
|
let old_style_tags_path = expand('%:p:h').'/'.'fixtures/GetClassLocation/old_style_tags'
|
|
let path = expand('%:p:h').'/'.'fixtures/GetClassLocation/empty.php'
|
|
|
|
exe ':set tags='.tags_path
|
|
below 1new
|
|
exe ":silent! edit ".path
|
|
exe ':3'
|
|
|
|
let res = phpcomplete#GetClassLocation('Foo', '')
|
|
call VUAssertEquals('fixtures/GetClassLocation/foo.class.php', res)
|
|
|
|
let res = phpcomplete#GetClassLocation('FooInterface', '')
|
|
call VUAssertEquals('fixtures/GetClassLocation/foo.class.php', res)
|
|
|
|
let res = phpcomplete#GetClassLocation('FooTrait', '')
|
|
call VUAssertEquals('fixtures/GetClassLocation/foo.class.php', res)
|
|
|
|
" when there are no namespaces to match for the classes from the tags file
|
|
" should return the first class's location where the name matches
|
|
exe ':set tags='.old_style_tags_path
|
|
let res = phpcomplete#GetClassLocation('Foo', '')
|
|
call VUAssertEquals('fixtures/GetClassLocation/foo.class.php', res)
|
|
|
|
let res = phpcomplete#GetClassLocation('FooInterface', '')
|
|
call VUAssertEquals('fixtures/GetClassLocation/foo.class.php', res)
|
|
|
|
silent! bw! %
|
|
endf
|
|
|
|
" vim: foldmethod=marker:expandtab:ts=4:sts=4
|