Skip to content
This repository has been archived by the owner on Sep 10, 2021. It is now read-only.

Commit

Permalink
Update PHPUnit to 3.7.35
Browse files Browse the repository at this point in the history
  • Loading branch information
Jamie Snape committed Jun 26, 2014
1 parent 33e2aec commit 778723a
Show file tree
Hide file tree
Showing 411 changed files with 23,960 additions and 18,332 deletions.
17 changes: 8 additions & 9 deletions tests/library/PHPUnit/File/Iterator.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
/**
* php-file-iterator
*
* Copyright (c) 2009-2011, Sebastian Bergmann <sb@sebastian-bergmann.de>.
* Copyright (c) 2009-2013, Sebastian Bergmann <sebastian@phpunit.de>.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
Expand Down Expand Up @@ -35,20 +35,20 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package File
* @author Sebastian Bergmann <sb@sebastian-bergmann.de>
* @copyright 2009-2011 Sebastian Bergmann <sb@sebastian-bergmann.de>
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
* @author Sebastian Bergmann <sebastian@phpunit.de>
* @copyright 2009-2013 Sebastian Bergmann <sebastian@phpunit.de>
* @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
* @since File available since Release 1.0.0
*/

/**
* FilterIterator implementation that filters files based on prefix(es) and/or
* suffix(es). Hidden files and files from hidden directories are also filtered.
*
* @author Sebastian Bergmann <sb@sebastian-bergmann.de>
* @copyright 2009-2011 Sebastian Bergmann <sb@sebastian-bergmann.de>
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
* @version Release: 1.2.6
* @author Sebastian Bergmann <sebastian@phpunit.de>
* @copyright 2009-2013 Sebastian Bergmann <sebastian@phpunit.de>
* @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
* @version Release: 1.3.4
* @link http://github.com/sebastianbergmann/php-file-iterator/tree
* @since Class available since Release 1.0.0
*/
Expand Down Expand Up @@ -194,4 +194,3 @@ protected function acceptSubString($filename, array $subStrings, $type)
return $matched;
}
}
?>
66 changes: 66 additions & 0 deletions tests/library/PHPUnit/File/Iterator/Autoload.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
<?php
/**
* php-file-iterator
*
* Copyright (c) 2009-2013, Sebastian Bergmann <sebastian@phpunit.de>.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* * Neither the name of Sebastian Bergmann nor the names of his
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
* @package File
* @author Sebastian Bergmann <sebastian@phpunit.de>
* @copyright 2009-2013 Sebastian Bergmann <sebastian@phpunit.de>
* @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
* @since File available since Release 1.3.0
*/

spl_autoload_register(
function ($class)
{
static $classes = NULL;
static $path = NULL;

if ($classes === NULL) {
$classes = array(
'file_iterator' => '/Iterator.php',
'file_iterator_facade' => '/Iterator/Facade.php',
'file_iterator_factory' => '/Iterator/Factory.php'
);

$path = dirname(dirname(__FILE__));
}

$cn = strtolower($class);

if (isset($classes[$cn])) {
require $path . $classes[$cn];
}
}
);
161 changes: 161 additions & 0 deletions tests/library/PHPUnit/File/Iterator/Facade.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
<?php
/**
* php-file-iterator
*
* Copyright (c) 2009-2013, Sebastian Bergmann <sebastian@phpunit.de>.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* * Neither the name of Sebastian Bergmann nor the names of his
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
* @package File
* @author Sebastian Bergmann <sebastian@phpunit.de>
* @copyright 2009-2013 Sebastian Bergmann <sebastian@phpunit.de>
* @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
* @since File available since Release 1.3.0
*/

/**
* Façade implementation that uses File_Iterator_Factory to create a
* File_Iterator that operates on an AppendIterator that contains an
* RecursiveDirectoryIterator for each given path. The list of unique
* files is returned as an array.
*
* @author Sebastian Bergmann <sebastian@phpunit.de>
* @copyright 2009-2013 Sebastian Bergmann <sebastian@phpunit.de>
* @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
* @version Release: 1.3.4
* @link http://github.com/sebastianbergmann/php-file-iterator/tree
* @since Class available since Release 1.3.0
*/
class File_Iterator_Facade
{
/**
* @param array|string $paths
* @param array|string $suffixes
* @param array|string $prefixes
* @param array $exclude
* @param boolean $commonPath
* @return array
*/
public function getFilesAsArray($paths, $suffixes = '', $prefixes = '', array $exclude = array(), $commonPath = FALSE)
{
if (is_string($paths)) {
$paths = array($paths);
}

$factory = new File_Iterator_Factory;
$iterator = $factory->getFileIterator(
$paths, $suffixes, $prefixes, $exclude
);

$files = array();

foreach ($iterator as $file) {
$file = $file->getRealPath();

if ($file) {
$files[] = $file;
}
}

foreach ($paths as $path) {
if (is_file($path)) {
$files[] = realpath($path);
}
}

$files = array_unique($files);
sort($files);

if ($commonPath) {
return array(
'commonPath' => $this->getCommonPath($files),
'files' => $files
);
} else {
return $files;
}
}

/**
* Returns the common path of a set of files.
*
* @param array $files
* @return string
*/
protected function getCommonPath(array $files)
{
$count = count($files);

if ($count == 0) {
return '';
}

if ($count == 1) {
return dirname($files[0]) . DIRECTORY_SEPARATOR;
}

$_files = array();

foreach ($files as $file) {
$_files[] = $_fileParts = explode(DIRECTORY_SEPARATOR, $file);

if (empty($_fileParts[0])) {
$_fileParts[0] = DIRECTORY_SEPARATOR;
}
}

$common = '';
$done = FALSE;
$j = 0;
$count--;

while (!$done) {
for ($i = 0; $i < $count; $i++) {
if ($_files[$i][$j] != $_files[$i+1][$j]) {
$done = TRUE;
break;
}
}

if (!$done) {
$common .= $_files[0][$j];

if ($j > 0) {
$common .= DIRECTORY_SEPARATOR;
}
}

$j++;
}

return DIRECTORY_SEPARATOR . $common;
}
}
59 changes: 10 additions & 49 deletions tests/library/PHPUnit/File/Iterator/Factory.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
/**
* php-file-iterator
*
* Copyright (c) 2009-2011, Sebastian Bergmann <sb@sebastian-bergmann.de>.
* Copyright (c) 2009-2013, Sebastian Bergmann <sebastian@phpunit.de>.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
Expand Down Expand Up @@ -35,23 +35,21 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package File
* @author Sebastian Bergmann <sb@sebastian-bergmann.de>
* @copyright 2009-2011 Sebastian Bergmann <sb@sebastian-bergmann.de>
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
* @author Sebastian Bergmann <sebastian@phpunit.de>
* @copyright 2009-2013 Sebastian Bergmann <sebastian@phpunit.de>
* @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
* @since File available since Release 1.1.0
*/

require_once 'File/Iterator.php';

/**
* Factory Method implementation that creates a File_Iterator that operates on
* an AppendIterator that contains an RecursiveDirectoryIterator for each given
* path.
*
* @author Sebastian Bergmann <sb@sebastian-bergmann.de>
* @copyright 2009-2011 Sebastian Bergmann <sb@sebastian-bergmann.de>
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
* @version Release: 1.2.6
* @author Sebastian Bergmann <sebastian@phpunit.de>
* @copyright 2009-2013 Sebastian Bergmann <sebastian@phpunit.de>
* @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
* @version Release: 1.3.4
* @link http://github.com/sebastianbergmann/php-file-iterator/tree
* @since Class available since Release 1.1.0
*/
Expand All @@ -64,7 +62,7 @@ class File_Iterator_Factory
* @param array $exclude
* @return AppendIterator
*/
public static function getFileIterator($paths, $suffixes = '', $prefixes = '', array $exclude = array())
public function getFileIterator($paths, $suffixes = '', $prefixes = '', array $exclude = array())
{
if (is_string($paths)) {
$paths = array($paths);
Expand Down Expand Up @@ -106,7 +104,7 @@ public static function getFileIterator($paths, $suffixes = '', $prefixes = '', a
$iterator->append(
new File_Iterator(
new RecursiveIteratorIterator(
new RecursiveDirectoryIterator($path)
new RecursiveDirectoryIterator($path, RecursiveDirectoryIterator::FOLLOW_SYMLINKS)
),
$suffixes,
$prefixes,
Expand All @@ -119,41 +117,4 @@ public static function getFileIterator($paths, $suffixes = '', $prefixes = '', a

return $iterator;
}

/**
* @param array|string $paths
* @param array|string $suffixes
* @param array|string $prefixes
* @param array $exclude
* @return array
*/
public static function getFilesAsArray($paths, $suffixes = '', $prefixes = '', array $exclude = array())
{
if (is_string($paths)) {
$paths = array($paths);
}

$result = array();

$iterator = self::getFileIterator(
$paths, $suffixes, $prefixes, $exclude
);

foreach ($iterator as $file) {
$file = $file->getRealPath();

if ($file) {
$result[] = $file;
}
}

foreach ($paths as $path) {
if (is_file($path)) {
$result[] = realpath($path);
}
}

return array_unique($result);
}
}
?>
Loading

0 comments on commit 778723a

Please sign in to comment.