2 declare(strict_types = 1);
18 use PhpParser\Node\Name\FullyQualified;
19 use PhpParser\NodeTraverser;
20 use PhpParser\ParserFactory;
22 use TYPO3\TestingFramework\Core\Unit\UnitTestCase;
36 \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(
'TYPO3\\CMS\\Does\\Not\\Exist');
38 $parser = (
new ParserFactory())->create(ParserFactory::ONLY_PHP7);
39 $statements =
$parser->parse($phpCode);
40 $traverser =
new NodeTraverser();
42 $statements = $traverser->traverse($statements);
43 $this->assertInstanceOf(FullyQualified::class, $statements[0]->expr->args[0]->value);
44 $this->assertEquals([
'TYPO3',
'CMS',
'Does',
'Not',
'Exist'], $statements[0]->expr->args[0]->value->parts);
54 \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(
'TYPO3\\CMS\\Does\\Not\\' . $foo);
56 $parser = (
new ParserFactory())->create(ParserFactory::ONLY_PHP7);
57 $statements =
$parser->parse($phpCode);
58 $traverser =
new NodeTraverser();
60 $statements = $traverser->traverse($statements);
61 $this->assertNotInstanceOf(FullyQualified::class, $statements[0]->expr->args[0]->value);