Source for file Filter.php
Documentation is available at Filter.php
// +------------------------------------------------------------------------+
// +------------------------------------------------------------------------+
// | Copyright (c) 2002-2005 Sebastian Bergmann <sb@sebastian-bergmann.de>. |
// +------------------------------------------------------------------------+
// | This source file is subject to version 3.00 of the PHP License, |
// | that is available at http://www.php.net/license/3_0.txt. |
// | If you did not receive a copy of the PHP license and are unable to |
// | obtain it through the world-wide-web, please send a note to |
// | license@php.net so we can mail you a copy immediately. |
// +------------------------------------------------------------------------+
// $Id: Filter.php,v 1.24.2.2 2005/04/10 14:00:33 sebastian Exp $
* Utility class for code filtering.
* @author Sebastian Bergmann <sb@sebastian-bergmann.de>
* @copyright Copyright © 2002-2005 Sebastian Bergmann <sb@sebastian-bergmann.de>
* @license http://www.php.net/license/3_0.txt The PHP License, Version 3.0
* Source files that are to be filtered.
protected static $filteredFiles = array (
'PHPUnit2/Extensions/CodeCoverage/Renderer/HTML.php',
'PHPUnit2/Extensions/CodeCoverage/Renderer/Text.php',
'PHPUnit2/Extensions/CodeCoverage/Renderer.php',
'PHPUnit2/Extensions/Log/PEAR.php',
'PHPUnit2/Extensions/Log/XML.php',
'PHPUnit2/Extensions/TestDox/ResultPrinter/HTML.php',
'PHPUnit2/Extensions/TestDox/ResultPrinter/Text.php',
'PHPUnit2/Extensions/TestDox/NamePrettifier.php',
'PHPUnit2/Extensions/TestDox/ResultPrinter.php',
'PHPUnit2/Extensions/ExceptionTestCase.php',
'PHPUnit2/Extensions/PerformanceTestCase.php',
'PHPUnit2/Extensions/RepeatedTest.php',
'PHPUnit2/Extensions/TestDecorator.php',
'PHPUnit2/Extensions/TestSetup.php',
'PHPUnit2/Framework/Assert.php',
'PHPUnit2/Framework/AssertionFailedError.php',
'PHPUnit2/Framework/ComparisonFailure.php',
'PHPUnit2/Framework/Error.php',
'PHPUnit2/Framework/IncompleteTest.php',
'PHPUnit2/Framework/IncompleteTestError.php',
'PHPUnit2/Framework/Test.php',
'PHPUnit2/Framework/TestCase.php',
'PHPUnit2/Framework/TestFailure.php',
'PHPUnit2/Framework/TestListener.php',
'PHPUnit2/Framework/TestResult.php',
'PHPUnit2/Framework/TestSuite.php',
'PHPUnit2/Framework/Warning.php',
'PHPUnit2/Runner/BaseTestRunner.php',
'PHPUnit2/Runner/IncludePathTestCollector.php',
'PHPUnit2/Runner/StandardTestSuiteLoader.php',
'PHPUnit2/Runner/TestCollector.php',
'PHPUnit2/Runner/TestRunListener.php',
'PHPUnit2/Runner/TestSuiteLoader.php',
'PHPUnit2/Runner/Version.php',
'PHPUnit2/TextUI/ResultPrinter.php',
'PHPUnit2/TextUI/TestRunner.php',
'PHPUnit2/Util/Filter.php',
'PHPUnit2/Util/Printer.php',
'PHPUnit2/Util/Skeleton.php',
// {{{ public static function addFileToFilter($filename)
* Adds a new file to be filtered.
$filename = self ::getCanonicalFilename ($filename);
if (!self ::isFiltered ($filename)) {
self ::$filteredFiles[] = $filename;
// {{{ public static function removeFileFromFilter($filename)
* Removes a file from the filter.
$filename = self ::getCanonicalFilename ($filename);
for ($i = 0; $i < sizeof ($keys); $i++ ) {
if (self ::$filteredFiles[$keys[$i]] == $filename) {
unset (self ::$filteredFiles[$keys[$i]]);
// {{{ public static function getFilteredCodeCoverage($codeCoverageInformation)
* Filters source lines from PHPUnit classes.
$files = array_keys ($codeCoverageInformation);
foreach ($files as $file) {
if (self ::isFiltered ($file)) {
unset ($codeCoverageInformation[$file]);
return $codeCoverageInformation;
// {{{ public static function getFilteredStacktrace(Exception $e)
* Filters stack frames from PHPUnit classes.
$filteredStacktrace = '';
$stacktrace = $e->getTrace ();
foreach ($stacktrace as $frame) {
if (isset ($frame['file']) && !self ::isFiltered ($frame['file'])) {
isset ($frame['line']) ? $frame['line'] : '?'
return $filteredStacktrace;
// {{{ protected static function getCanonicalFilename($filename)
* Canonicalizes a source file name.
* @param string $filename
foreach (array ('PHPUnit2', 'Benchmark', 'Console', 'PEAR') as $package) {
$pos = strpos($filename, $package);
$filename = substr($filename, $pos);
// {{{ protected static function isFiltered($filename)
* @param string $filename
if (substr($filename, -7 ) == 'phpunit' ||
in_array(self ::getCanonicalFilename ($filename), self ::$filteredFiles)) {
* vim600: et sw=2 ts=2 fdm=marker
Documentation generated on Mon, 11 Mar 2019 14:19:18 -0400 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.
|