public static function runTests() { $results = array(); // allow basic tests to be loaded even when extension is not activated. // This is needed for every class exposed as report $testClasses = ezInactiveExtensionLoader::getIniValue('sysinfo.ini', 'ModuleSettings', 'TestsList', ezInactiveExtensionLoader::TYPE_ARRAY); foreach ($testClasses as $class) { /// @todo check that interface is implemented $results = array_merge($results, call_user_func(array($class, 'runTests'))); } return $results; }
function getReports($reportsExtensions, $toGenerate = null) { $available = array(); $declared = ezInactiveExtensionLoader::getIniValue('sysinfo.ini', 'ReportsSettings', 'ReportGenerators', ezInactiveExtensionLoader::TYPE_ARRAY); foreach ($declared as $class) { // wouldn't we like a DIC here? $generator = new $class(); $desc = $generator->getDescription(); $available[$desc['tag']] = $generator; } if (is_array($toGenerate)) { return array_intersect_key($available, array_flip($toGenerate)); } return $available; }