summaryrefslogtreecommitdiff
path: root/tests/test_tools/simpletest/collector.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_tools/simpletest/collector.php')
-rw-r--r--tests/test_tools/simpletest/collector.php113
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