1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-03 18:17:55 +01:00
psalm/tests/Internal/Codebase/InternalCallMapHandlerTest.php

25 lines
1.1 KiB
PHP
Raw Normal View History

<?php
2021-09-23 19:29:15 +02:00
namespace Psalm\Tests\Internal\Codebase;
use Psalm\Internal\Codebase\InternalCallMapHandler;
class InternalCallMapHandlerTest extends \Psalm\Tests\TestCase
{
/**
* @covers InternalCallMapHandler::getCallMap
*/
public function testGetcallmapReturnsAValidCallmap(): void
{
$callMap = InternalCallMapHandler::getCallMap();
self::assertArrayKeysAreStrings($callMap, "Returned CallMap has non-string keys");
self::assertArrayValuesAreArrays($callMap, "Returned CallMap has non-array values");
foreach ($callMap as $function => $signature) {
self::assertArrayKeysAreZeroOrString($signature, "Function " . $function . " in returned CallMap has invalid keys");
self::assertArrayValuesAreStrings($signature, "Function " . $function . " in returned CallMap has non-string values");
foreach ($signature as $type) {
self::assertStringIsParsableType($type, "Function " . $function . " in returned CallMap contains invalid type declaration " . $type);
}
}
}
}