ILIAS  release_7 Revision v7.30-3-g800a261c036
ilServicesMailSuite.php
Go to the documentation of this file.
1<?php declare(strict_types=1);
2
3/* Copyright (c) 1998-2015 ILIAS open source, Extended GPL, see docs/LICENSE */
4
5use PHPUnit\Framework\TestSuite;
6use PHPUnit\Framework\TestCase;
7
8require_once __DIR__ . '/bootstrap.php';
9
14class ilServicesMailSuite extends TestSuite
15{
20 public static function suite() : self
21 {
22 $suite = new self();
23
24 foreach (new RegExIterator(
25 new RecursiveIteratorIterator(
26 new RecursiveDirectoryIterator(__DIR__, FilesystemIterator::SKIP_DOTS),
27 RecursiveIteratorIterator::LEAVES_ONLY
28 ),
29 '/BaseTest\.php$/'
30 ) as $file) {
32 require_once $file->getPathname();
33 }
34
35 foreach (new RegExIterator(
36 new RecursiveIteratorIterator(
37 new RecursiveDirectoryIterator(__DIR__, FilesystemIterator::SKIP_DOTS),
38 RecursiveIteratorIterator::LEAVES_ONLY
39 ),
40 '/(?<!Base)Test\.php$/'
41 ) as $file) {
43 require_once $file->getPathname();
44
45 $className = preg_replace('/(.*?)(\.php)/', '$1', $file->getBasename());
46 if (class_exists($className)) {
47 $reflection = new ReflectionClass($className);
48 if (
49 !$reflection->isAbstract() &&
50 !$reflection->isInterface() &&
51 $reflection->isSubclassOf(TestCase::class)) {
52 $suite->addTestSuite($className);
53 }
54 }
55 }
56
57 return $suite;
58 }
59}
$suite
An exception for terminatinating execution or to throw for unit testing.
Class ilServicesMailSuite.