1
0
mirror of https://github.com/danog/psalm.git synced 2024-11-26 20:34:47 +01:00
psalm/tests/TestConfig.php
2020-02-17 22:05:58 -05:00

59 lines
1.5 KiB
PHP

<?php
namespace Psalm\Tests;
use const DIRECTORY_SEPARATOR;
use function getcwd;
use Psalm\Config;
class TestConfig extends Config
{
/** @var Config\ProjectFileFilter|null */
private static $cached_project_files = null;
/**
* @psalm-suppress PossiblyNullPropertyAssignmentValue because cache_directory isn't strictly nullable
*/
public function __construct()
{
parent::__construct();
$this->throw_exception = true;
$this->use_docblock_types = true;
$this->level = 1;
$this->cache_directory = null;
$this->base_dir = getcwd() . DIRECTORY_SEPARATOR;
if (!self::$cached_project_files) {
self::$cached_project_files = Config\ProjectFileFilter::loadFromXMLElement(
new \SimpleXMLElement(
'<?xml version="1.0"?>
<projectFiles>
<directory name="src" />
<ignoreFiles>
<directory name="src/Psalm/Internal/Stubs" />
</ignoreFiles>
</projectFiles>'
),
$this->base_dir,
true
);
}
$this->project_files = self::$cached_project_files;
$this->collectPredefinedConstants();
$this->collectPredefinedFunctions();
}
public function getComposerFilePathForClassLike($fq_classlike_name)
{
return false;
}
public function getProjectDirectories()
{
return [];
}
}