addTest(new SapphireTestSuite($className)); } return $suite; } /** * @return Array */ public static function get_all_tests() { require_once('sapphire/tests/bootstrap.php'); TestRunner::use_test_manifest(); $tests = ClassInfo::subclassesFor('SapphireTest'); array_shift($tests); return $tests; } /** * Run tests for one or more "modules". * A module is generally a toplevel folder, e.g. "mysite" or "sapphire". * * @param String $nameStr * @return Array */ protected static function get_module_tests($namesStr) { require_once('sapphire/tests/bootstrap.php'); $tests = array(); $names = explode(',', $namesStr); foreach($names as $name) { $classesForModule = ClassInfo::classes_for_folder($name); if($classesForModule) foreach($classesForModule as $class) { if(class_exists($class) && is_subclass_of($class, 'SapphireTest')) { $tests[] = $class; } } } return $tests; } }