1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
<?php
/**
* @see https://github.com/laminas/laminas-code for the canonical source repository
* @copyright https://github.com/laminas/laminas-code/blob/master/COPYRIGHT.md
* @license https://github.com/laminas/laminas-code/blob/master/LICENSE.md New BSD License
*/
namespace LaminasTest\Code\Reflection\DocBlock\Tag;
use Laminas\Code\Reflection\DocBlock\Tag\PropertyTag;
use PHPUnit\Framework\TestCase;
/**
* @group Laminas_Reflection
* @group Laminas_Reflection_DocBlock
*/
class PropertyTagTest extends TestCase
{
public function testParseName()
{
$tag = new PropertyTag();
$tag->initialize('$test');
self::assertEquals('property', $tag->getName());
self::assertEquals('$test', $tag->getPropertyName());
self::assertNull($tag->getType());
self::assertNull($tag->getDescription());
}
public function testParseTypeAndName()
{
$tag = new PropertyTag();
$tag->initialize('string|null $test');
self::assertEquals('$test', $tag->getPropertyName());
self::assertNull($tag->getDescription());
self::assertEquals('string', $tag->getType());
self::assertEquals(['string', 'null'], $tag->getTypes());
}
public function testParseNameAndDescription()
{
$tag = new PropertyTag();
$tag->initialize('$test I\'m test property');
self::assertEquals('$test', $tag->getPropertyName());
self::assertNull($tag->getType());
self::assertEquals('I\'m test property', $tag->getDescription());
}
public function testParseTypeAndNameAndDescription()
{
$tag = new PropertyTag();
$tag->initialize('string $test I\'m test property');
self::assertEquals('$test', $tag->getPropertyName());
self::assertEquals('string', $tag->getType());
self::assertEquals('I\'m test property', $tag->getDescription());
}
}
|