3declare(strict_types=1);
7use PHPUnit\Framework\TestSuite;
8use PHPUnit\Framework\TestCase;
10require_once
'libs/composer/vendor/autoload.php';
19 public static function suite():
self
23 foreach (
new RegExIterator(
24 new RecursiveIteratorIterator(
25 new RecursiveDirectoryIterator(__DIR__, FilesystemIterator::SKIP_DOTS),
26 RecursiveIteratorIterator::LEAVES_ONLY
28 '/(?<!Base)Test\.php$/'
31 require_once $file->getPathname();
33 $className = preg_replace(
'/(.*?)(\.php)/',
'$1', $file->getBasename());
34 if (class_exists($className)) {
35 $reflection =
new ReflectionClass($className);
37 !$reflection->isAbstract() &&
38 !$reflection->isInterface() &&
39 $reflection->isSubclassOf(TestCase::class)) {
40 $suite->addTestSuite($className);