2 declare(strict_types = 1);
18 use PhpParser\NodeTraverser;
19 use PhpParser\NodeVisitor\NameResolver;
20 use PhpParser\ParserFactory;
23 use TYPO3\TestingFramework\Core\Unit\UnitTestCase;
35 $parser = (
new ParserFactory())->create(ParserFactory::PREFER_PHP7);
36 $fixtureFile = __DIR__ .
'/Fixtures/ClassNameMatcherFixture.php';
37 $statements =
$parser->parse(file_get_contents($fixtureFile));
39 $traverser =
new NodeTraverser();
40 $traverser->addVisitor(
new NameResolver());
46 'Breaking-80700-DeprecatedFunctionalityRemoved.rst',
47 'Deprecation-76164-DeprecateRemoveXSS.rst',
50 'TYPO3\CMS\Backend\Console\Application' => [
52 'Breaking-80700-DeprecatedFunctionalityRemoved.rst',
53 'Deprecation-80468-CommandLineInterfaceCliKeysAndCli_dispatchphpsh.rst',
58 $traverser->addVisitor($subject);
59 $traverser->traverse($statements);
60 $expectedHitLineNumbers = [
78 $actualHitLineNumbers = [];
79 foreach ($subject->getMatches() as $match) {
80 $actualHitLineNumbers[] = $match[
'line'];
82 $this->assertEquals($expectedHitLineNumbers, $actualHitLineNumbers);