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