Increased unit test coverage of DocBlock;

Moved the tag block checks outside (and prior to) the tag line loop;
Doc and CS fixes.
This commit is contained in:
Vasil Rangelov
2012-11-10 13:24:46 +02:00
parent 233e4b3ff7
commit 082c9354d0
11 changed files with 71 additions and 36 deletions
@@ -57,7 +57,7 @@ tags.',
$parsedContents[2]
);
}
public function testInlineTagAtStartParsing()
{
$fixture = <<<LONGDESC
@@ -69,7 +69,7 @@ LONGDESC;
$parsedContents = $object->getParsedContents();
$this->assertCount(3, $parsedContents);
$this->assertSame('', $parsedContents[0]);
$this->assertInstanceOf(
__NAMESPACE__ . '\Tag\LinkTag',
@@ -81,7 +81,7 @@ tags.',
$parsedContents[2]
);
}
public function testNestedInlineTagParsing()
{
$fixture = <<<LONGDESC
@@ -93,7 +93,7 @@ LONGDESC;
$parsedContents = $object->getParsedContents();
$this->assertCount(3, $parsedContents);
$this->assertSame(
'This is text for a description with ',
$parsedContents[0]
@@ -198,7 +198,7 @@ inline tag'),
$parsedContents[1]->getParsedDescription()
);
}
public function testInlineTagEscapingSequence()
{
$fixture = <<<LONGDESC
@@ -242,4 +242,4 @@ LONGDESC;
$parsedContents[1]->getParsedDescription()
);
}
}
}
@@ -24,7 +24,7 @@ class LinkTagTest extends \PHPUnit_Framework_TestCase
{
/**
* Test that the \phpDocumentor\Reflection\DocBlock\Tag\LinkTag can create
* a link for the @link doc block
* a link for the @link doc block.
*
* @param string $type
* @param string $content
@@ -24,7 +24,7 @@ class ParamTagTest extends \PHPUnit_Framework_TestCase
{
/**
* Test that the \phpDocumentor\Reflection\DocBlock\Tag\ParamTag can
* understand the param DocBlock.
* understand the @param DocBlock.
*
* @param string $type
* @param string $content
@@ -24,7 +24,7 @@ class ReturnTagTest extends ParamTagTest
{
/**
* Test that the \phpDocumentor\Reflection\DocBlock\Tag\ReturnTag can
* understand the Return DocBlock.
* understand the @return DocBlock.
*
* @param string $content
* @param string $extractedType
@@ -24,7 +24,7 @@ class SeeTagTest extends \PHPUnit_Framework_TestCase
{
/**
* Test that the phpDocumentor_Reflection_DocBlock_Tag_See can create a link
* for the @see doc block
* for the @see doc block.
*
* @param string $type
* @param string $content
@@ -24,7 +24,7 @@ class UsesTagTest extends \PHPUnit_Framework_TestCase
{
/**
* Test that the \phpDocumentor\Reflection\DocBlock\Tag\UsesTag can create
* a link for the @uses doc block
* a link for the @uses doc block.
*
* @param string $type
* @param string $content
@@ -24,7 +24,7 @@ class VarTagTest extends \PHPUnit_Framework_TestCase
{
/**
* Test that the \phpDocumentor\Reflection\DocBlock\Tag\VarTag can
* understand the @var doc block
* understand the @var doc block.
*
* @param string $type
* @param string $content
@@ -13,7 +13,7 @@
namespace phpDocumentor\Reflection;
/**
* Test class for phpDocumentor_Reflection_DocBlock
* Test class for phpDocumentor\Reflection\DocBlock
*
* @author Mike van Riel <[email protected]>
* @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
@@ -46,6 +46,31 @@ DOCBLOCK;
$this->assertEquals(2, count($object->getTags()));
$this->assertTrue($object->hasTag('see'));
$this->assertTrue($object->hasTag('return'));
$this->assertFalse($object->hasTag('category'));
}
public function testConstructFromReflector()
{
$object = new DocBlock(new \ReflectionClass($this));
$this->assertEquals(
'Test class for phpDocumentor\Reflection\DocBlock',
$object->getShortDescription()
);
$this->assertEquals('', $object->getLongDescription()->getContents());
$this->assertEquals(4, count($object->getTags()));
$this->assertTrue($object->hasTag('author'));
$this->assertTrue($object->hasTag('copyright'));
$this->assertTrue($object->hasTag('license'));
$this->assertTrue($object->hasTag('link'));
$this->assertFalse($object->hasTag('category'));
}
/**
* @expectedException \InvalidArgumentException
*/
public function testExceptionOnInvalidObject()
{
$object = new DocBlock($this);
}
public function testDotSeperation()
@@ -139,16 +164,18 @@ DOCBLOCK;
public function testThatExpandTypeDoesNotExpandAllKeywords($keyword)
{
$docblock = new DocBlock('', '\My\Namespace');
$this->assertEquals($keyword, $docblock->expandType($keyword));
$this->assertSame($keyword, $docblock->expandType($keyword));
}
public function getNonExpandableKeywordsForExpandType()
{
return array(
array(null),
array('string'), array('int'), array('integer'), array('bool'),
array('boolean'), array('float'), array('double'), array('object'),
array('mixed'), array('array'), array('resource'), array('void'),
array('null'), array('callback'), array('false'), array('true')
array('null'), array('callback'), array('false'), array('true'),
array('self'), array('$this'), array('callable')
);
}
}