File: KeyOfTest.php

package info (click to toggle)
php-phpdocumentor-type-resolver 2.0.0-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 2,684 kB
  • sloc: php: 27,998; xml: 102; makefile: 47
file content (28 lines) | stat: -rw-r--r-- 818 bytes parent folder | download
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
<?php

declare(strict_types=1);

namespace phpDocumentor\Reflection\PseudoTypes;

use phpDocumentor\Reflection\Fqsen;
use phpDocumentor\Reflection\Types\Object_;
use PHPUnit\Framework\TestCase;

final class KeyOfTest extends TestCase
{
    public function testCreate(): void
    {
        $childType = new ConstExpression(new Object_(new Fqsen('\\phpDocumentor\\Type')), 'ARRAY_CONST');
        $type = new KeyOf($childType);

        $this->assertSame($childType, $type->getType());
        $this->assertEquals(new ArrayKey(), $type->underlyingType());
    }

    public function testToString(): void
    {
        $type = new KeyOf(new ConstExpression(new Object_(new Fqsen('\\phpDocumentor\\Type')), 'ARRAY_CONST'));

        $this->assertSame('key-of<\\phpDocumentor\\Type::ARRAY_CONST>', (string) $type);
    }
}