N°4789 - handle constants and if conditional structures

This commit is contained in:
odain
2025-08-25 11:45:38 +02:00
parent 6d80b2e5ed
commit 788b23a485
5 changed files with 347 additions and 65 deletions

View File

@@ -35,6 +35,26 @@ class ModuleDiscoveryServiceTest extends ItopDataTestCase
$this->assertEquals($aExpected, $aRes);
}
public function testReadModuleFileConfigurationWithConstants()
{
$sModuleFilePath = __DIR__.'/resources/module.authent-ldap.php';
$aRes = ModuleDiscoveryService::GetInstance()->ReadModuleFileConfiguration($sModuleFilePath);
$aExpected = ModuleDiscoveryService::GetInstance()->ReadModuleFileConfigurationLegacy($sModuleFilePath);
$this->assertEquals($aExpected, $aRes);
}
public function testReadModuleFileConfigurationParsingIssue()
{
$sModuleFilePath = __DIR__.'/resources/module.__MODULE__.php';
$this->expectException(\ModuleDiscoveryServiceException::class);
$this->expectExceptionMessage("Syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ']' or ')' on line 31");
ModuleDiscoveryService::GetInstance()->ReadModuleFileConfiguration($sModuleFilePath);
}
public static function ComputeBooleanExpressionProvider()
{
return [