Completed
Pull Request — master (#223)
by Jaap
07:24
created

ParserTest::docblockProvider()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 44

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 44
rs 9.216
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace phpDocumentor\Reflection;
6
7
use \phpDocumentor\Reflection\AST;
8
use PHPUnit\Framework\TestCase;
9
10
class ParserTest extends TestCase
11
{
12
    /**
13
     * @dataProvider docblockProvider
14
     */
15
    public function testParsesDocblock(string $docblock, AST\Docblock $expectedAst) : void
16
    {
17
        $parser = new Parser();
18
19
        $ast = $parser->parse($docblock);
20
21
        $this->assertEquals($expectedAst, $ast);
22
    }
23
24
    public function docblockProvider()
25
    {
26
        return [
27
            'empty singleLine docblock' => [
28
                "/** */",
29
                new AST\Docblock(),
30
            ],
31
            'empty docblock' => [
32
                <<<DOCBLOCK
33
/**
34
 */
35
DOCBLOCK
36
                ,
37
                new AST\Docblock(),
38
            ],
39
            'simple tag' => [
40
                <<<DOCBLOCK
41
/**
42
 * @var
43
 */
44
DOCBLOCK
45
                ,
46
                new AST\Docblock(null, new AST\Tag('var')),
47
            ],
48
            [
49
                <<<DOCBLOCK
50
/**
51
 * @var:unittest
52
 */
53
DOCBLOCK
54
                ,
55
                new AST\Docblock(null, new AST\Tag('var', 'unittest')),
56
            ],
57
            [
58
                <<<DOCBLOCK
59
/**
60
 * This is a docblock
61
 */
62
DOCBLOCK
63
                ,
64
                new AST\Docblock('This is a docblock'),
65
            ],
66
        ];
67
    }
68
}
69