Viewing file: DocBlockTest.php (6.71 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php /** * This file is part of phpDocumentor. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright 2010-2015 Mike van Riel<mike@phpdoc.org> * @license http://www.opensource.org/licenses/mit-license.php MIT * @link http://phpdoc.org */
namespace phpDocumentor\Reflection;
use Mockery as m; use phpDocumentor\Reflection\Types\Context;
/** * @coversDefaultClass phpDocumentor\Reflection\DocBlock * @covers ::<private> * @uses \Webmozart\Assert\Assert */ class DocBlockTest extends \PHPUnit_Framework_TestCase { /** * @covers ::__construct * @covers ::getSummary * * @uses \phpDocumentor\Reflection\DocBlock\Description */ public function testDocBlockCanHaveASummary() { $summary = 'This is a summary';
$fixture = new DocBlock($summary);
$this->assertSame($summary, $fixture->getSummary()); }
/** * @covers ::__construct * * @expectedException \InvalidArgumentException */ public function testExceptionIsThrownIfSummaryIsNotAString() { new DocBlock([]); }
/** * @covers ::__construct * * @expectedException \InvalidArgumentException */ public function testExceptionIsThrownIfTemplateStartIsNotABoolean() { new DocBlock('', null, [], null, null, ['is not boolean']); }
/** * @covers ::__construct * * @expectedException \InvalidArgumentException */ public function testExceptionIsThrownIfTemplateEndIsNotABoolean() { new DocBlock('', null, [], null, null, false, ['is not boolean']); }
/** * @covers ::__construct * @covers ::getDescription * * @uses \phpDocumentor\Reflection\DocBlock\Description */ public function testDocBlockCanHaveADescription() { $description = new DocBlock\Description('');
$fixture = new DocBlock('', $description);
$this->assertSame($description, $fixture->getDescription()); }
/** * @covers ::__construct * @covers ::getTags * * @uses \phpDocumentor\Reflection\DocBlock\Description * @uses \phpDocumentor\Reflection\DocBlock\Tag */ public function testDocBlockCanHaveTags() { $tags = [ m::mock(DocBlock\Tag::class) ];
$fixture = new DocBlock('', null, $tags);
$this->assertSame($tags, $fixture->getTags()); }
/** * @covers ::__construct * @covers ::getTags * * @uses \phpDocumentor\Reflection\DocBlock\Description * @uses \phpDocumentor\Reflection\DocBlock\Tag * * @expectedException \InvalidArgumentException */ public function testDocBlockAllowsOnlyTags() { $tags = [ null ];
$fixture = new DocBlock('', null, $tags); }
/** * @covers ::__construct * @covers ::getTagsByName * * @uses \phpDocumentor\Reflection\DocBlock::getTags * @uses \phpDocumentor\Reflection\DocBlock\Description * @uses \phpDocumentor\Reflection\DocBlock\Tag */ public function testFindTagsInDocBlockByName() { $tag1 = m::mock(DocBlock\Tag::class); $tag2 = m::mock(DocBlock\Tag::class); $tag3 = m::mock(DocBlock\Tag::class); $tags = [$tag1, $tag2, $tag3];
$tag1->shouldReceive('getName')->andReturn('abc'); $tag2->shouldReceive('getName')->andReturn('abcd'); $tag3->shouldReceive('getName')->andReturn('ab');
$fixture = new DocBlock('', null, $tags);
$this->assertSame([$tag2], $fixture->getTagsByName('abcd')); $this->assertSame([], $fixture->getTagsByName('Ebcd')); }
/** * @covers ::__construct * @covers ::getTagsByName * @uses \phpDocumentor\Reflection\DocBlock\Description * @expectedException \InvalidArgumentException */ public function testExceptionIsThrownIfNameForTagsIsNotString() { $fixture = new DocBlock(); $fixture->getTagsByName([]); }
/** * @covers ::__construct * @covers ::hasTag * * @uses \phpDocumentor\Reflection\DocBlock::getTags * @uses \phpDocumentor\Reflection\DocBlock\Description * @uses \phpDocumentor\Reflection\DocBlock\Tag */ public function testCheckIfThereAreTagsWithAGivenName() { $tag1 = m::mock(DocBlock\Tag::class); $tag2 = m::mock(DocBlock\Tag::class); $tag3 = m::mock(DocBlock\Tag::class); $tags = [$tag1, $tag2, $tag3];
$tag1->shouldReceive('getName')->twice()->andReturn('abc'); $tag2->shouldReceive('getName')->twice()->andReturn('abcd'); $tag3->shouldReceive('getName')->once();
$fixture = new DocBlock('', null, $tags);
$this->assertTrue($fixture->hasTag('abcd')); $this->assertFalse($fixture->hasTag('Ebcd')); }
/** * @covers ::__construct * @covers ::hasTag * @uses \phpDocumentor\Reflection\DocBlock\Description * @expectedException \InvalidArgumentException */ public function testExceptionIsThrownIfNameForCheckingTagsIsNotString() { $fixture = new DocBlock(); $fixture->hasTag([]); }
/** * @covers ::__construct * @covers ::getContext * * @uses \phpDocumentor\Reflection\DocBlock\Description * @uses \phpDocumentor\Reflection\Types\Context */ public function testDocBlockKnowsInWhichNamespaceItIsAndWhichAliasesThereAre() { $context = new Context('');
$fixture = new DocBlock('', null, [], $context);
$this->assertSame($context, $fixture->getContext()); }
/** * @covers ::__construct * @covers ::getLocation * * @uses \phpDocumentor\Reflection\DocBlock\Description * @uses \phpDocumentor\Reflection\Location */ public function testDocBlockKnowsAtWhichLineItIs() { $location = new Location(10);
$fixture = new DocBlock('', null, [], null, $location);
$this->assertSame($location, $fixture->getLocation()); }
/** * @covers ::__construct * @covers ::isTemplateStart * * @uses \phpDocumentor\Reflection\DocBlock\Description */ public function testDocBlockKnowsIfItIsTheStartOfADocBlockTemplate() { $fixture = new DocBlock('', null, [], null, null, true);
$this->assertTrue($fixture->isTemplateStart()); }
/** * @covers ::__construct * @covers ::isTemplateEnd * * @uses \phpDocumentor\Reflection\DocBlock\Description */ public function testDocBlockKnowsIfItIsTheEndOfADocBlockTemplate() { $fixture = new DocBlock('', null, [], null, null, false, true);
$this->assertTrue($fixture->isTemplateEnd()); } }
|