diff --git a/tests/apps.php b/tests/apps.php new file mode 100644 index 0000000000000000000000000000000000000000..3e27b81df6160e746ef68aec1c81d1dcb9814394 --- /dev/null +++ b/tests/apps.php @@ -0,0 +1,41 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +function loadDirectory($path) { + if ($dh = opendir($path)) { + while ($name = readdir($dh)) { + if ($name[0] !== '.') { + $file = $path . '/' . $name; + if (is_dir($file)) { + loadDirectory($file); + } elseif (substr($name, -4, 4) === '.php') { + require_once $file; + } + } + } + } +} + +function getSubclasses($parentClassName) { + $classes = array(); + foreach (get_declared_classes() as $className) { + if (is_subclass_of($className, $parentClassName)) + $classes[] = $className; + } + + return $classes; +} + +$apps = OC_App::getEnabledApps(); + +foreach ($apps as $app) { + $dir = OC_App::getAppPath($app); + if (is_dir($dir . '/tests')) { + loadDirectory($dir . '/tests'); + } +} diff --git a/tests/phpunit.xml b/tests/phpunit.xml index 93b781bca442279940ac30fb9d21bfc311df27f8..4a2d68a3e479ab2d8327e8e021473a8a99eb083c 100644 --- a/tests/phpunit.xml +++ b/tests/phpunit.xml @@ -2,5 +2,6 @@ <phpunit bootstrap="bootstrap.php"> <testsuite name='ownCloud'> <directory suffix='.php'>lib/</directory> + <file>apps.php</file> </testsuite> </phpunit>