19 declare(strict_types=1);
24 require_once __DIR__ .
"/ilTestBaseTestCase.php";
30 if (!defined(
"ILIAS_HTTP_PATH")) {
31 define(
"ILIAS_HTTP_PATH",
"http://localhost");
34 if (!defined(
"ILIAS_LOG_ENABLED")) {
35 define(
"ILIAS_LOG_ENABLED",
false);
38 if (!defined(
"ROOT_FOLDER_ID")) {
39 define(
"ROOT_FOLDER_ID", 1);
42 if (!defined(
"IL_INST_ID")) {
43 define(
"IL_INST_ID", 0);
45 if (!defined(
"CLIENT_DATA_DIR")) {
46 define(
"CLIENT_DATA_DIR",
"/tmp");
49 if (!defined(
"CLIENT_ID")) {
50 define(
"CLIENT_ID", 1);
53 if (!defined(
'ANONYMOUS_USER_ID')) {
54 define(
'ANONYMOUS_USER_ID', 13);
57 chdir(dirname(__FILE__));
63 foreach (
new RegExIterator(
66 RecursiveIteratorIterator::LEAVES_ONLY
71 require_once $file->getPathname();
74 foreach (
new RegExIterator(
77 RecursiveIteratorIterator::LEAVES_ONLY
79 '/(?<!Base)Test\.php$/' 82 require_once $file->getPathname();
84 $className = preg_replace(
'/(.*?)(\.php)/',
'$1', $file->getBasename());
85 if (!self::addClass($suite, $className)) {
87 if (preg_match(
'/^namespace ([[:alnum:]_\\\\]+);$/m', file_get_contents($file->getPathname()),
$results)) {
88 self::addClass($suite,
$results[1] .
'\\' . $className);
96 private static function addClass(
self $suite,
string $className): bool
98 if (!class_exists($className)) {
103 !$reflection->isAbstract() &&
104 !$reflection->isInterface() &&
105 $reflection->isSubclassOf(TestCase::class)) {
106 $suite->addTestSuite($className);
static addClass(self $suite, string $className)