ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
ilServicesMailSuite.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (c) 1998-2015 ILIAS open source, Extended GPL, see docs/LICENSE */
3 
4 require_once __DIR__ . '/bootstrap.php';
5 
11 {
16  public static function suite()
17  {
18  $suite = new self();
19 
20  foreach (new \RegExIterator(
22  new \RecursiveDirectoryIterator(__DIR__, \FilesystemIterator::SKIP_DOTS),
23  \RecursiveIteratorIterator::LEAVES_ONLY
24  ),
25  '/BaseTest\.php$/'
26  ) as $file) {
28  require_once $file->getPathname();
29  }
30 
31  foreach (new \RegExIterator(
33  new \RecursiveDirectoryIterator(__DIR__, \FilesystemIterator::SKIP_DOTS),
34  \RecursiveIteratorIterator::LEAVES_ONLY
35  ),
36  '/(?<!Base)Test\.php$/'
37  ) as $file) {
39  require_once $file->getPathname();
40 
41  $className = preg_replace('/(.*?)(\.php)/', '$1', $file->getBasename());
42  if (class_exists($className)) {
43  $reflection = new \ReflectionClass($className);
44  if (
45  !$reflection->isAbstract() &&
46  !$reflection->isInterface() &&
47  $reflection->isSubclassOf(\PHPUnit_Framework_TestCase::class)) {
48  $suite->addTestSuite($className);
49  }
50  }
51  }
52 
53  return $suite;
54  }
55 }
$suite
Class ilServicesMailSuite.