mirror of
https://github.com/SpaceVim/SpaceVim.git
synced 2025-01-24 05:20:04 +08:00
86 lines
2.9 KiB
VimL
Vendored
86 lines
2.9 KiB
VimL
Vendored
fun! SetUp()
|
|
endf
|
|
|
|
fun! TestCase_collects_lines_up_until_the_first_param_var_or_return_as_description_whitespace_trimmed_down_from_the_ends()
|
|
call SetUp()
|
|
|
|
let ret = phpcomplete#ParseDocBlock(
|
|
\ "short description\n".
|
|
\ "\n".
|
|
\ "long description line\n".
|
|
\ "long description line2\n".
|
|
\ "@return Foo some foo\n".
|
|
\ "not included in description\n")
|
|
|
|
call VUAssertEquals("".
|
|
\ "short description\n".
|
|
\ "\n".
|
|
\ "long description line\n".
|
|
\ "long description line2",
|
|
\ ret.description)
|
|
endf
|
|
|
|
fun! TestCase_extracts_return_type_and_description()
|
|
call SetUp()
|
|
|
|
let ret = phpcomplete#ParseDocBlock("@return Foo some foo\n")
|
|
call VUAssertEquals("Foo", ret.return.type)
|
|
call VUAssertEquals("some foo", ret.return.description)
|
|
|
|
" description is empty string when not specified
|
|
let ret = phpcomplete#ParseDocBlock("@return Foo\n")
|
|
call VUAssertEquals("Foo", ret.return.type)
|
|
call VUAssertEquals("", ret.return.description)
|
|
endf
|
|
|
|
fun! TestCase_extracts_parameters_with_types_and_descriptions()
|
|
call SetUp()
|
|
|
|
let ret = phpcomplete#ParseDocBlock("".
|
|
\ "@param mixed $foo\n".
|
|
\ "@param Foo $bar some description\n")
|
|
|
|
call VUAssertEquals("mixed", ret.params[0].type)
|
|
call VUAssertEquals("$foo", ret.params[0].name)
|
|
call VUAssertEquals("", ret.params[0].description)
|
|
|
|
call VUAssertEquals("Foo", ret.params[1].type)
|
|
call VUAssertEquals("$bar", ret.params[1].name)
|
|
call VUAssertEquals("some description", ret.params[1].description)
|
|
endf
|
|
|
|
fun! TestCase_extracts_throws_and_exception_lines_with_type_and_description()
|
|
call SetUp()
|
|
|
|
let ret = phpcomplete#ParseDocBlock("".
|
|
\ "@exception Foo on full moons\n".
|
|
\ "@throws Foo\n")
|
|
|
|
call VUAssertEquals("Foo", ret.throws[0].type)
|
|
call VUAssertEquals("on full moons", ret.throws[0].description)
|
|
|
|
call VUAssertEquals("Foo", ret.throws[1].type)
|
|
call VUAssertEquals("", ret.throws[1].description)
|
|
endf
|
|
|
|
fun! TestCase_extracts_var_lines_with_type_and_description()
|
|
call SetUp()
|
|
|
|
let ret = phpcomplete#ParseDocBlock("@var Foo some description\n")
|
|
call VUAssertEquals("Foo", ret.var.type)
|
|
call VUAssertEquals("some description", ret.var.description)
|
|
|
|
let ret = phpcomplete#ParseDocBlock("@var Foo\n")
|
|
call VUAssertEquals("Foo", ret.var.type)
|
|
call VUAssertEquals("", ret.var.description)
|
|
endf
|
|
|
|
fun! TestCase_extracts_AT_properties_from_docblock_of_a_class()
|
|
call SetUp()
|
|
|
|
let ret = phpcomplete#ParseDocBlock("Foo\n\n@property DateTime $baz Some comments here")
|
|
call VUAssertEquals([{'description': '$baz Some comments here', 'line': '@property DateTime $baz Some comments here', 'type': 'DateTime'}], ret.properties)
|
|
endf
|
|
|
|
" vim: foldmethod=marker:expandtab:ts=4:sts=4
|