diff options
Diffstat (limited to 'tests/test_tools/simpletest/collector.php')
-rw-r--r-- | tests/test_tools/simpletest/collector.php | 113 |
1 files changed, 0 insertions, 113 deletions
diff --git a/tests/test_tools/simpletest/collector.php b/tests/test_tools/simpletest/collector.php deleted file mode 100644 index ded847c9..00000000 --- a/tests/test_tools/simpletest/collector.php +++ /dev/null @@ -1,113 +0,0 @@ -<?php -/** - * This file contains the following classes: {@link SimpleCollector}, - * {@link SimplePatternCollector}. - * - * @author Travis Swicegood <development@domain51.com> - * @package SimpleTest - * @subpackage UnitTester - */ - -/** - * The basic collector for {@link GroupTest} - * - * @see collect(), GroupTest::collect() - * @package SimpleTest - * @subpackage UnitTester - */ -class SimpleCollector { - - /** - * Strips off any kind of slash at the end so as to normalise the path - * - * @param string $path Path to normalise. - */ - function _removeTrailingSlash($path) { - return preg_replace('|[\\/]$|', '', $path); - - /** - * @internal - * Try benchmarking the following. It's more code, but by not using the - * regex, it may be faster? Also, shouldn't be looking for - * DIRECTORY_SEPERATOR instead of a manual "/"? - */ - if (substr($path, -1) == DIRECTORY_SEPERATOR) { - return substr($path, 0, -1); - } else { - return $path; - } - } - - /** - * Scans the directory and adds what it can. - * @param object $test Group test with {@link GroupTest::addTestFile()} method. - * @param string $path Directory to scan. - * @see _attemptToAdd() - */ - function collect($test, $path) { - $path = $this->_removeTrailingSlash($path); - if ($handle = opendir($path)) { - while (($entry = readdir($handle)) !== false) { - $this->_handle($test, $path . DIRECTORY_SEPARATOR . $entry); - } - closedir($handle); - } - } - - /** - * This method determines what should be done with a given file and adds - * it via {@link GroupTest::addTestFile()} if necessary. - * - * This method should be overriden to provide custom matching criteria, - * such as pattern matching, recursive matching, etc. For an example, see - * {@link SimplePatternCollector::_handle()}. - * - * @param object $test Group test with {@link GroupTest::addTestFile()} method. - * @param string $filename A filename as generated by {@link collect()} - * @see collect() - * @access protected - */ - function _handle($test, $file) { - if (!is_dir($file)) { - $test->addTestFile($file); - } - } -} - -/** - * An extension to {@link SimpleCollector} that only adds files matching a - * given pattern. - * - * @package SimpleTest - * @subpackage UnitTester - * @see SimpleCollector - */ -class SimplePatternCollector extends SimpleCollector { - protected $_pattern; - - - /** - * - * @param string $pattern Perl compatible regex to test name against - * See {@link http://us4.php.net/manual/en/reference.pcre.pattern.syntax.php PHP's PCRE} - * for full documentation of valid pattern.s - */ - function SimplePatternCollector($pattern = '/php$/i') { - $this->_pattern = $pattern; - } - - - /** - * Attempts to add files that match a given pattern. - * - * @see SimpleCollector::_handle() - * @param object $test Group test with {@link GroupTest::addTestFile()} method. - * @param string $path Directory to scan. - * @access protected - */ - function _handle($test, $filename) { - if (preg_match($this->_pattern, $filename)) { - parent::_handle($test, $filename); - } - } -}
\ No newline at end of file |