|
17 | 17 | use phpDocumentor\Reflection\Types\Compound;
|
18 | 18 | use phpDocumentor\Reflection\Types\Context;
|
19 | 19 | use phpDocumentor\Reflection\Types\Iterable_;
|
| 20 | +use phpDocumentor\Reflection\Types\Nullable; |
20 | 21 | use phpDocumentor\Reflection\Types\Object_;
|
21 | 22 | use Mockery\MockInterface;
|
| 23 | +use phpDocumentor\Reflection\Types\String_; |
22 | 24 |
|
23 | 25 | /**
|
24 | 26 | * @coversDefaultClass phpDocumentor\Reflection\TypeResolver
|
@@ -149,9 +151,30 @@ public function testResolvingTypedArrays()
|
149 | 151 | * @covers ::<private>
|
150 | 152 | *
|
151 | 153 | * @uses \phpDocumentor\Reflection\Types\Context
|
152 |
| - * @uses \phpDocumentor\Reflection\Types\Array_ |
| 154 | + * @uses \phpDocumentor\Reflection\Types\Nullable |
153 | 155 | * @uses \phpDocumentor\Reflection\Types\String_
|
154 | 156 | */
|
| 157 | + public function testResolvingNullableTypes() |
| 158 | + { |
| 159 | + $fixture = new TypeResolver(); |
| 160 | + |
| 161 | + /** @var Nullable $resolvedType */ |
| 162 | + $resolvedType = $fixture->resolve('?string', new Context('')); |
| 163 | + |
| 164 | + $this->assertInstanceOf(Nullable::class, $resolvedType); |
| 165 | + $this->assertInstanceOf(String_::class, $resolvedType->getActualType()); |
| 166 | + $this->assertSame('?string', (string)$resolvedType); |
| 167 | + } |
| 168 | + |
| 169 | + /** |
| 170 | + * @covers ::__construct |
| 171 | + * @covers ::resolve |
| 172 | + * @covers ::<private> |
| 173 | + * |
| 174 | + * @uses phpDocumentor\Reflection\Types\Context |
| 175 | + * @uses phpDocumentor\Reflection\Types\Array_ |
| 176 | + * @uses phpDocumentor\Reflection\Types\String_ |
| 177 | + */ |
155 | 178 | public function testResolvingNestedTypedArrays()
|
156 | 179 | {
|
157 | 180 | $fixture = new TypeResolver();
|
@@ -379,6 +402,7 @@ public function provideKeywords()
|
379 | 402 | ['$this', Types\This::class],
|
380 | 403 | ['static', Types\Static_::class],
|
381 | 404 | ['self', Types\Self_::class],
|
| 405 | + ['parent', Types\Parent_::class], |
382 | 406 | ['iterable', Iterable_::class],
|
383 | 407 | ];
|
384 | 408 | }
|
|
0 commit comments