Open
Description
phpstan/phpstan
v2.1.13phpstan/phpstan-phpunit
v2.0.6
Given the following trait:
trait MockServerTrait
{
private static ?MockWebServer\MockWebServer $mockServer = null;
protected static function startMockServer(
string $host = '127.0.0.1',
int $port = 2083,
): MockWebServer\MockWebServer {
self::$mockServer?->stop();
self::$mockServer = new MockWebServer\MockWebServer($port, $host);
self::$mockServer->start();
\PHPStan\dumpType(self::$mockServer); // line 55
self::assertTrue(self::$mockServer->isRunning());
\PHPStan\dumpType(self::$mockServer); // line 57
return self::$mockServer; // line 59
}
}
When running PHPStan, I get the following errors:
------ ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Line tests/MockServerTrait.php (in context of class EliasHaeussler\CpanelRequests\Tests\MockServerAwareTestCase)
------ ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
55 Dumped type: donatj\MockWebServer\MockWebServer
✏️ tests/MockServerTrait.php:55
57 Dumped type: donatj\MockWebServer\MockWebServer|null
✏️ tests/MockServerTrait.php:57
59 Method EliasHaeussler\CpanelRequests\Tests\MockServerAwareTestCase::startMockServer() should return donatj\MockWebServer\MockWebServer but returns donatj\MockWebServer\MockWebServer|null.
🪪 return.type
✏️ tests/MockServerTrait.php:59
------ ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
When I omit the last self::assertTrue
, no errors are reported anymore.
Metadata
Metadata
Assignees
Labels
No labels