!C99Shell v. 2.0 [PHP 7 Update] [25.02.2019]!

Software: Apache/2.2.22 (Debian). PHP/5.6.36 

uname -a: Linux h05.hvosting.ua 4.9.110-amd64 #3 SMP Sun Nov 4 16:27:09 UTC 2018 x86_64 

uid=1389(h33678) gid=1099(h33678) groups=1099(h33678),502(mgrsecure) 

Safe-mode: OFF (not secure)

/home/h33678/data/www/it-man.ztu.edu.ua/src/vendor/phpunit/phpunit/src/Util/   drwxr-xr-x
Free 116.97 GB of 200.55 GB (58.32%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     Configuration.php (34.85 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/*
 * This file is part of PHPUnit.
 *
 * (c) Sebastian Bergmann <sebastian@phpunit.de>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

/**
 * Wrapper for the PHPUnit XML configuration file.
 *
 * Example XML configuration file:
 * <code>
 * <?xml version="1.0" encoding="utf-8" ?>
 *
 * <phpunit backupGlobals="true"
 *          backupStaticAttributes="false"
 *          bootstrap="/path/to/bootstrap.php"
 *          cacheTokens="false"
 *          columns="80"
 *          colors="false"
 *          stderr="false"
 *          convertErrorsToExceptions="true"
 *          convertNoticesToExceptions="true"
 *          convertWarningsToExceptions="true"
 *          forceCoversAnnotation="false"
 *          mapTestClassNameToCoveredClassName="false"
 *          printerClass="PHPUnit_TextUI_ResultPrinter"
 *          processIsolation="false"
 *          stopOnError="false"
 *          stopOnFailure="false"
 *          stopOnIncomplete="false"
 *          stopOnRisky="false"
 *          stopOnSkipped="false"
 *          testSuiteLoaderClass="PHPUnit_Runner_StandardTestSuiteLoader"
 *          timeoutForSmallTests="1"
 *          timeoutForMediumTests="10"
 *          timeoutForLargeTests="60"
 *          beStrictAboutTestsThatDoNotTestAnything="false"
 *          beStrictAboutOutputDuringTests="false"
 *          beStrictAboutTestSize="false"
 *          beStrictAboutTodoAnnotatedTests="false"
 *          checkForUnintentionallyCoveredCode="false"
 *          disallowChangesToGlobalState="false"
 *          verbose="false">
 *   <testsuites>
 *     <testsuite name="My Test Suite">
 *       <directory suffix="Test.php" phpVersion="5.3.0" phpVersionOperator=">=">/path/to/files</directory>
 *       <file phpVersion="5.3.0" phpVersionOperator=">=">/path/to/MyTest.php</file>
 *       <exclude>/path/to/files/exclude</exclude>
 *     </testsuite>
 *   </testsuites>
 *
 *   <groups>
 *     <include>
 *       <group>name</group>
 *     </include>
 *     <exclude>
 *       <group>name</group>
 *     </exclude>
 *   </groups>
 *
 *   <filter>
 *     <blacklist>
 *       <directory suffix=".php">/path/to/files</directory>
 *       <file>/path/to/file</file>
 *       <exclude>
 *         <directory suffix=".php">/path/to/files</directory>
 *         <file>/path/to/file</file>
 *       </exclude>
 *     </blacklist>
 *     <whitelist addUncoveredFilesFromWhitelist="true"
 *                processUncoveredFilesFromWhitelist="false">
 *       <directory suffix=".php">/path/to/files</directory>
 *       <file>/path/to/file</file>
 *       <exclude>
 *         <directory suffix=".php">/path/to/files</directory>
 *         <file>/path/to/file</file>
 *       </exclude>
 *     </whitelist>
 *   </filter>
 *
 *   <listeners>
 *     <listener class="MyListener" file="/optional/path/to/MyListener.php">
 *       <arguments>
 *         <array>
 *           <element key="0">
 *             <string>Sebastian</string>
 *           </element>
 *         </array>
 *         <integer>22</integer>
 *         <string>April</string>
 *         <double>19.78</double>
 *         <null/>
 *         <object class="stdClass"/>
 *         <file>MyRelativeFile.php</file>
 *         <directory>MyRelativeDir</directory>
 *       </arguments>
 *     </listener>
 *   </listeners>
 *
 *   <logging>
 *     <log type="coverage-html" target="/tmp/report" lowUpperBound="50" highLowerBound="90"/>
 *     <log type="coverage-clover" target="/tmp/clover.xml"/>
 *     <log type="coverage-crap4j" target="/tmp/crap.xml" threshold="30"/>
 *     <log type="json" target="/tmp/logfile.json"/>
 *     <log type="plain" target="/tmp/logfile.txt"/>
 *     <log type="tap" target="/tmp/logfile.tap"/>
 *     <log type="junit" target="/tmp/logfile.xml" logIncompleteSkipped="false"/>
 *     <log type="testdox-html" target="/tmp/testdox.html"/>
 *     <log type="testdox-text" target="/tmp/testdox.txt"/>
 *   </logging>
 *
 *   <php>
 *     <includePath>.</includePath>
 *     <ini name="foo" value="bar"/>
 *     <const name="foo" value="bar"/>
 *     <var name="foo" value="bar"/>
 *     <env name="foo" value="bar"/>
 *     <post name="foo" value="bar"/>
 *     <get name="foo" value="bar"/>
 *     <cookie name="foo" value="bar"/>
 *     <server name="foo" value="bar"/>
 *     <files name="foo" value="bar"/>
 *     <request name="foo" value="bar"/>
 *   </php>
 *
 *   <selenium>
 *     <browser name="Firefox on Linux"
 *              browser="*firefox /usr/lib/firefox/firefox-bin"
 *              host="my.linux.box"
 *              port="4444"
 *              timeout="30000"/>
 *   </selenium>
 * </phpunit>
 * </code>
 *
 * @since Class available since Release 3.2.0
 */
class PHPUnit_Util_Configuration
{
    private static 
$instances = array();

    protected 
$document;
    protected 
$xpath;
    protected 
$filename;

    
/**
     * Loads a PHPUnit configuration file.
     *
     * @param string $filename
     */
    
protected function __construct($filename)
    {
        
$this->filename $filename;
        
$this->document PHPUnit_Util_XML::loadFile($filenamefalsetruetrue);
        
$this->xpath    = new DOMXPath($this->document);
    }

    
/**
     * @since  Method available since Release 3.4.0
     */
    
final private function __clone()
    {
    }

    
/**
     * Returns a PHPUnit configuration object.
     *
     * @param string $filename
     *
     * @return PHPUnit_Util_Configuration
     *
     * @since  Method available since Release 3.4.0
     */
    
public static function getInstance($filename)
    {
        
$realpath realpath($filename);

        if (
$realpath === false) {
            throw new 
PHPUnit_Framework_Exception(
                
sprintf(
                    
'Could not read "%s".',
                    
$filename
                
)
            );
        }

        if (!isset(
self::$instances[$realpath])) {
            
self::$instances[$realpath] = new self($realpath);
        }

        return 
self::$instances[$realpath];
    }

    
/**
     * Returns the realpath to the configuration file.
     *
     * @return string
     *
     * @since  Method available since Release 3.6.0
     */
    
public function getFilename()
    {
        return 
$this->filename;
    }

    
/**
     * Returns the configuration for SUT filtering.
     *
     * @return array
     *
     * @since  Method available since Release 3.2.1
     */
    
public function getFilterConfiguration()
    {
        
$addUncoveredFilesFromWhitelist     true;
        
$processUncoveredFilesFromWhitelist false;

        
$tmp $this->xpath->query('filter/whitelist');

        if (
$tmp->length == 1) {
            if (
$tmp->item(0)->hasAttribute('addUncoveredFilesFromWhitelist')) {
                
$addUncoveredFilesFromWhitelist $this->getBoolean(
                    (string) 
$tmp->item(0)->getAttribute(
                        
'addUncoveredFilesFromWhitelist'
                    
),
                    
true
                
);
            }

            if (
$tmp->item(0)->hasAttribute('processUncoveredFilesFromWhitelist')) {
                
$processUncoveredFilesFromWhitelist $this->getBoolean(
                    (string) 
$tmp->item(0)->getAttribute(
                        
'processUncoveredFilesFromWhitelist'
                    
),
                    
false
                
);
            }
        }

        return array(
          
'blacklist' => array(
            
'include' => array(
              
'directory' => $this->readFilterDirectories(
                  
'filter/blacklist/directory'
              
),
              
'file' => $this->readFilterFiles(
                  
'filter/blacklist/file'
              
)
            ),
            
'exclude' => array(
              
'directory' => $this->readFilterDirectories(
                  
'filter/blacklist/exclude/directory'
              
),
              
'file' => $this->readFilterFiles(
                  
'filter/blacklist/exclude/file'
              
)
            )
          ),
          
'whitelist' => array(
            
'addUncoveredFilesFromWhitelist'     => $addUncoveredFilesFromWhitelist,
            
'processUncoveredFilesFromWhitelist' => $processUncoveredFilesFromWhitelist,
            
'include'                            => array(
              
'directory' => $this->readFilterDirectories(
                  
'filter/whitelist/directory'
              
),
              
'file' => $this->readFilterFiles(
                  
'filter/whitelist/file'
              
)
            ),
            
'exclude' => array(
              
'directory' => $this->readFilterDirectories(
                  
'filter/whitelist/exclude/directory'
              
),
              
'file' => $this->readFilterFiles(
                  
'filter/whitelist/exclude/file'
              
)
            )
          )
        );
    }

    
/**
     * Returns the configuration for groups.
     *
     * @return array
     *
     * @since  Method available since Release 3.2.1
     */
    
public function getGroupConfiguration()
    {
        
$groups = array(
          
'include' => array(),
          
'exclude' => array()
        );

        foreach (
$this->xpath->query('groups/include/group') as $group) {
            
$groups['include'][] = (string) $group->textContent;
        }

        foreach (
$this->xpath->query('groups/exclude/group') as $group) {
            
$groups['exclude'][] = (string) $group->textContent;
        }

        return 
$groups;
    }

    
/**
     * Returns the configuration for listeners.
     *
     * @return array
     *
     * @since  Method available since Release 3.4.0
     */
    
public function getListenerConfiguration()
    {
        
$result = array();

        foreach (
$this->xpath->query('listeners/listener') as $listener) {
            
$class     = (string) $listener->getAttribute('class');
            
$file      '';
            
$arguments = array();

            if (
$listener->getAttribute('file')) {
                
$file $this->toAbsolutePath(
                    (string) 
$listener->getAttribute('file'),
                    
true
                
);
            }

            foreach (
$listener->childNodes as $node) {
                if (
$node instanceof DOMElement && $node->tagName == 'arguments') {
                    foreach (
$node->childNodes as $argument) {
                        if (
$argument instanceof DOMElement) {
                            if (
$argument->tagName == 'file' ||
                            
$argument->tagName == 'directory') {
                                
$arguments[] = $this->toAbsolutePath((string) $argument->textContent);
                            } else {
                                
$arguments[] = PHPUnit_Util_XML::xmlToVariable($argument);
                            }
                        }
                    }
                }
            }

            
$result[] = array(
              
'class'     => $class,
              
'file'      => $file,
              
'arguments' => $arguments
            
);
        }

        return 
$result;
    }

    
/**
     * Returns the logging configuration.
     *
     * @return array
     */
    
public function getLoggingConfiguration()
    {
        
$result = array();

        foreach (
$this->xpath->query('logging/log') as $log) {
            
$type   = (string) $log->getAttribute('type');
            
$target = (string) $log->getAttribute('target');

            if (!
$target) {
                continue;
            }

            
$target $this->toAbsolutePath($target);

            if (
$type == 'coverage-html') {
                if (
$log->hasAttribute('lowUpperBound')) {
                    
$result['lowUpperBound'] = $this->getInteger(
                        (string) 
$log->getAttribute('lowUpperBound'),
                        
50
                    
);
                }

                if (
$log->hasAttribute('highLowerBound')) {
                    
$result['highLowerBound'] = $this->getInteger(
                        (string) 
$log->getAttribute('highLowerBound'),
                        
90
                    
);
                }
            } elseif (
$type == 'coverage-crap4j') {
                if (
$log->hasAttribute('threshold')) {
                    
$result['crap4jThreshold'] = $this->getInteger(
                        (string) 
$log->getAttribute('threshold'),
                        
30
                    
);
                }
            } elseif (
$type == 'junit') {
                if (
$log->hasAttribute('logIncompleteSkipped')) {
                    
$result['logIncompleteSkipped'] = $this->getBoolean(
                        (string) 
$log->getAttribute('logIncompleteSkipped'),
                        
false
                    
);
                }
            } elseif (
$type == 'coverage-text') {
                if (
$log->hasAttribute('showUncoveredFiles')) {
                    
$result['coverageTextShowUncoveredFiles'] = $this->getBoolean(
                        (string) 
$log->getAttribute('showUncoveredFiles'),
                        
false
                    
);
                }
                if (
$log->hasAttribute('showOnlySummary')) {
                    
$result['coverageTextShowOnlySummary'] = $this->getBoolean(
                        (string) 
$log->getAttribute('showOnlySummary'),
                        
false
                    
);
                }
            }

            
$result[$type] = $target;
        }

        return 
$result;
    }

    
/**
     * Returns the PHP configuration.
     *
     * @return array
     *
     * @since  Method available since Release 3.2.1
     */
    
public function getPHPConfiguration()
    {
        
$result = array(
          
'include_path' => array(),
          
'ini'          => array(),
          
'const'        => array(),
          
'var'          => array(),
          
'env'          => array(),
          
'post'         => array(),
          
'get'          => array(),
          
'cookie'       => array(),
          
'server'       => array(),
          
'files'        => array(),
          
'request'      => array()
        );

        foreach (
$this->xpath->query('php/includePath') as $includePath) {
            
$path = (string) $includePath->textContent;
            if (
$path) {
                
$result['include_path'][] = $this->toAbsolutePath($path);
            }
        }

        foreach (
$this->xpath->query('php/ini') as $ini) {
            
$name  = (string) $ini->getAttribute('name');
            
$value = (string) $ini->getAttribute('value');

            
$result['ini'][$name] = $value;
        }

        foreach (
$this->xpath->query('php/const') as $const) {
            
$name  = (string) $const->getAttribute('name');
            
$value = (string) $const->getAttribute('value');

            
$result['const'][$name] = $this->getBoolean($value$value);
        }

        foreach (array(
'var''env''post''get''cookie''server''files''request') as $array) {
            foreach (
$this->xpath->query('php/' $array) as $var) {
                
$name  = (string) $var->getAttribute('name');
                
$value = (string) $var->getAttribute('value');

                
$result[$array][$name] = $this->getBoolean($value$value);
            }
        }

        return 
$result;
    }

    
/**
     * Handles the PHP configuration.
     *
     * @since  Method available since Release 3.2.20
     */
    
public function handlePHPConfiguration()
    {
        
$configuration $this->getPHPConfiguration();

        if (! empty(
$configuration['include_path'])) {
            
ini_set(
                
'include_path',
                
implode(PATH_SEPARATOR$configuration['include_path']) .
                
PATH_SEPARATOR .
                
ini_get('include_path')
            );
        }

        foreach (
$configuration['ini'] as $name => $value) {
            if (
defined($value)) {
                
$value constant($value);
            }

            
ini_set($name$value);
        }

        foreach (
$configuration['const'] as $name => $value) {
            if (!
defined($name)) {
                
define($name$value);
            }
        }

        foreach (array(
'var''post''get''cookie''server''files''request') as $array) {
            
// See https://github.com/sebastianbergmann/phpunit/issues/277
            
switch ($array) {
                case 
'var':
                    
$target = &$GLOBALS;
                    break;

                case 
'server':
                    
$target = &$_SERVER;
                    break;

                default:
                    
$target = &$GLOBALS['_' strtoupper($array)];
                    break;
            }

            foreach (
$configuration[$array] as $name => $value) {
                
$target[$name] = $value;
            }
        }

        foreach (
$configuration['env'] as $name => $value) {
            if (
false === getenv($name)) {
                
putenv("{$name}={$value}");
            }
            if (!isset(
$_ENV[$name])) {
                
$_ENV[$name] = $value;
            }
        }
    }

    
/**
     * Returns the PHPUnit configuration.
     *
     * @return array
     *
     * @since  Method available since Release 3.2.14
     */
    
public function getPHPUnitConfiguration()
    {
        
$result = array();
        
$root   $this->document->documentElement;

        if (
$root->hasAttribute('cacheTokens')) {
            
$result['cacheTokens'] = $this->getBoolean(
                (string) 
$root->getAttribute('cacheTokens'),
                
false
            
);
        }

        if (
$root->hasAttribute('columns')) {
            
$columns = (string) $root->getAttribute('columns');

            if (
$columns == 'max') {
                
$result['columns'] = 'max';
            } else {
                
$result['columns'] = $this->getInteger($columns80);
            }
        }

        if (
$root->hasAttribute('colors')) {
            
/* only allow boolean for compatibility with previous versions
              'always' only allowed from command line */
            
if ($this->getBoolean($root->getAttribute('colors'), false)) {
                
$result['colors'] = PHPUnit_TextUI_ResultPrinter::COLOR_AUTO;
            } else {
                
$result['colors'] = PHPUnit_TextUI_ResultPrinter::COLOR_NEVER;
            }
        }

        
/*
         * Issue #657
         */
        
if ($root->hasAttribute('stderr')) {
            
$result['stderr'] = $this->getBoolean(
                (string) 
$root->getAttribute('stderr'),
                
false
            
);
        }

        if (
$root->hasAttribute('backupGlobals')) {
            
$result['backupGlobals'] = $this->getBoolean(
                (string) 
$root->getAttribute('backupGlobals'),
                
true
            
);
        }

        if (
$root->hasAttribute('backupStaticAttributes')) {
            
$result['backupStaticAttributes'] = $this->getBoolean(
                (string) 
$root->getAttribute('backupStaticAttributes'),
                
false
            
);
        }

        if (
$root->getAttribute('bootstrap')) {
            
$result['bootstrap'] = $this->toAbsolutePath(
                (string) 
$root->getAttribute('bootstrap')
            );
        }

        if (
$root->hasAttribute('convertErrorsToExceptions')) {
            
$result['convertErrorsToExceptions'] = $this->getBoolean(
                (string) 
$root->getAttribute('convertErrorsToExceptions'),
                
true
            
);
        }

        if (
$root->hasAttribute('convertNoticesToExceptions')) {
            
$result['convertNoticesToExceptions'] = $this->getBoolean(
                (string) 
$root->getAttribute('convertNoticesToExceptions'),
                
true
            
);
        }

        if (
$root->hasAttribute('convertWarningsToExceptions')) {
            
$result['convertWarningsToExceptions'] = $this->getBoolean(
                (string) 
$root->getAttribute('convertWarningsToExceptions'),
                
true
            
);
        }

        if (
$root->hasAttribute('forceCoversAnnotation')) {
            
$result['forceCoversAnnotation'] = $this->getBoolean(
                (string) 
$root->getAttribute('forceCoversAnnotation'),
                
false
            
);
        }

        if (
$root->hasAttribute('mapTestClassNameToCoveredClassName')) {
            
$result['mapTestClassNameToCoveredClassName'] = $this->getBoolean(
                (string) 
$root->getAttribute('mapTestClassNameToCoveredClassName'),
                
false
            
);
        }

        if (
$root->hasAttribute('processIsolation')) {
            
$result['processIsolation'] = $this->getBoolean(
                (string) 
$root->getAttribute('processIsolation'),
                
false
            
);
        }

        if (
$root->hasAttribute('stopOnError')) {
            
$result['stopOnError'] = $this->getBoolean(
                (string) 
$root->getAttribute('stopOnError'),
                
false
            
);
        }

        if (
$root->hasAttribute('stopOnFailure')) {
            
$result['stopOnFailure'] = $this->getBoolean(
                (string) 
$root->getAttribute('stopOnFailure'),
                
false
            
);
        }

        if (
$root->hasAttribute('stopOnIncomplete')) {
            
$result['stopOnIncomplete'] = $this->getBoolean(
                (string) 
$root->getAttribute('stopOnIncomplete'),
                
false
            
);
        }

        if (
$root->hasAttribute('stopOnRisky')) {
            
$result['stopOnRisky'] = $this->getBoolean(
                (string) 
$root->getAttribute('stopOnRisky'),
                
false
            
);
        }

        if (
$root->hasAttribute('stopOnSkipped')) {
            
$result['stopOnSkipped'] = $this->getBoolean(
                (string) 
$root->getAttribute('stopOnSkipped'),
                
false
            
);
        }

        if (
$root->hasAttribute('testSuiteLoaderClass')) {
            
$result['testSuiteLoaderClass'] = (string) $root->getAttribute(
                
'testSuiteLoaderClass'
            
);
        }

        if (
$root->getAttribute('testSuiteLoaderFile')) {
            
$result['testSuiteLoaderFile'] = $this->toAbsolutePath(
                (string) 
$root->getAttribute('testSuiteLoaderFile')
            );
        }

        if (
$root->hasAttribute('printerClass')) {
            
$result['printerClass'] = (string) $root->getAttribute(
                
'printerClass'
            
);
        }

        if (
$root->getAttribute('printerFile')) {
            
$result['printerFile'] = $this->toAbsolutePath(
                (string) 
$root->getAttribute('printerFile')
            );
        }

        if (
$root->hasAttribute('timeoutForSmallTests')) {
            
$result['timeoutForSmallTests'] = $this->getInteger(
                (string) 
$root->getAttribute('timeoutForSmallTests'),
                
1
            
);
        }

        if (
$root->hasAttribute('timeoutForMediumTests')) {
            
$result['timeoutForMediumTests'] = $this->getInteger(
                (string) 
$root->getAttribute('timeoutForMediumTests'),
                
10
            
);
        }

        if (
$root->hasAttribute('timeoutForLargeTests')) {
            
$result['timeoutForLargeTests'] = $this->getInteger(
                (string) 
$root->getAttribute('timeoutForLargeTests'),
                
60
            
);
        }

        if (
$root->hasAttribute('beStrictAboutTestsThatDoNotTestAnything')) {
            
$result['reportUselessTests'] = $this->getBoolean(
                (string) 
$root->getAttribute('beStrictAboutTestsThatDoNotTestAnything'),
                
false
            
);
        }

        if (
$root->hasAttribute('checkForUnintentionallyCoveredCode')) {
            
$result['strictCoverage'] = $this->getBoolean(
                (string) 
$root->getAttribute('checkForUnintentionallyCoveredCode'),
                
false
            
);
        }

        if (
$root->hasAttribute('beStrictAboutOutputDuringTests')) {
            
$result['disallowTestOutput'] = $this->getBoolean(
                (string) 
$root->getAttribute('beStrictAboutOutputDuringTests'),
                
false
            
);
        }

        if (
$root->hasAttribute('beStrictAboutChangesToGlobalState')) {
            
$result['disallowChangesToGlobalState'] = $this->getBoolean(
                (string) 
$root->getAttribute('beStrictAboutChangesToGlobalState'),
                
false
            
);
        }

        if (
$root->hasAttribute('beStrictAboutTestSize')) {
            
$result['enforceTimeLimit'] = $this->getBoolean(
                (string) 
$root->getAttribute('beStrictAboutTestSize'),
                
false
            
);
        }

        if (
$root->hasAttribute('beStrictAboutTodoAnnotatedTests')) {
            
$result['disallowTodoAnnotatedTests'] = $this->getBoolean(
                (string) 
$root->getAttribute('beStrictAboutTodoAnnotatedTests'),
                
false
            
);
        }

        if (
$root->hasAttribute('strict')) {
            
$flag $this->getBoolean(
                (string) 
$root->getAttribute('strict'),
                
false
            
);

            
$result['reportUselessTests']          = $flag;
            
$result['strictCoverage']              = $flag;
            
$result['disallowTestOutput']          = $flag;
            
$result['enforceTimeLimit']            = $flag;
            
$result['disallowTodoAnnotatedTests']  = $flag;
            
$result['deprecatedStrictModeSetting'] = true;
        }

        if (
$root->hasAttribute('verbose')) {
            
$result['verbose'] = $this->getBoolean(
                (string) 
$root->getAttribute('verbose'),
                
false
            
);
        }

        return 
$result;
    }

    
/**
     * Returns the SeleniumTestCase browser configuration.
     *
     * @return array
     *
     * @since  Method available since Release 3.2.9
     */
    
public function getSeleniumBrowserConfiguration()
    {
        
$result = array();

        foreach (
$this->xpath->query('selenium/browser') as $config) {
            
$name    = (string) $config->getAttribute('name');
            
$browser = (string) $config->getAttribute('browser');

            if (
$config->hasAttribute('host')) {
                
$host = (string) $config->getAttribute('host');
            } else {
                
$host 'localhost';
            }

            if (
$config->hasAttribute('port')) {
                
$port $this->getInteger(
                    (string) 
$config->getAttribute('port'),
                    
4444
                
);
            } else {
                
$port 4444;
            }

            if (
$config->hasAttribute('timeout')) {
                
$timeout $this->getInteger(
                    (string) 
$config->getAttribute('timeout'),
                    
30000
                
);
            } else {
                
$timeout 30000;
            }

            
$result[] = array(
              
'name'    => $name,
              
'browser' => $browser,
              
'host'    => $host,
              
'port'    => $port,
              
'timeout' => $timeout
            
);
        }

        return 
$result;
    }

    
/**
     * Returns the test suite configuration.
     *
     * @return PHPUnit_Framework_TestSuite
     *
     * @since  Method available since Release 3.2.1
     */
    
public function getTestSuiteConfiguration($testSuiteFilter null)
    {
        
$testSuiteNodes $this->xpath->query('testsuites/testsuite');

        if (
$testSuiteNodes->length == 0) {
            
$testSuiteNodes $this->xpath->query('testsuite');
        }

        if (
$testSuiteNodes->length == 1) {
            return 
$this->getTestSuite($testSuiteNodes->item(0), $testSuiteFilter);
        }

        if (
$testSuiteNodes->length 1) {
            
$suite = new PHPUnit_Framework_TestSuite;

            foreach (
$testSuiteNodes as $testSuiteNode) {
                
$suite->addTestSuite(
                    
$this->getTestSuite($testSuiteNode$testSuiteFilter)
                );
            }

            return 
$suite;
        }
    }

    
/**
     * @param DOMElement $testSuiteNode
     *
     * @return PHPUnit_Framework_TestSuite
     *
     * @since  Method available since Release 3.4.0
     */
    
protected function getTestSuite(DOMElement $testSuiteNode$testSuiteFilter null)
    {
        if (
$testSuiteNode->hasAttribute('name')) {
            
$suite = new PHPUnit_Framework_TestSuite(
                (string) 
$testSuiteNode->getAttribute('name')
            );
        } else {
            
$suite = new PHPUnit_Framework_TestSuite;
        }

        
$exclude = array();

        foreach (
$testSuiteNode->getElementsByTagName('exclude') as $excludeNode) {
            
$excludeFile = (string) $excludeNode->textContent;
            if (
$excludeFile) {
                
$exclude[] = $this->toAbsolutePath($excludeFile);
            }
        }

        
$fileIteratorFacade = new File_Iterator_Facade;

        foreach (
$testSuiteNode->getElementsByTagName('directory') as $directoryNode) {
            if (
$testSuiteFilter && $directoryNode->parentNode->getAttribute('name') != $testSuiteFilter) {
                continue;
            }

            
$directory = (string) $directoryNode->textContent;

            if (empty(
$directory)) {
                continue;
            }

            if (
$directoryNode->hasAttribute('phpVersion')) {
                
$phpVersion = (string) $directoryNode->getAttribute('phpVersion');
            } else {
                
$phpVersion PHP_VERSION;
            }

            if (
$directoryNode->hasAttribute('phpVersionOperator')) {
                
$phpVersionOperator = (string) $directoryNode->getAttribute('phpVersionOperator');
            } else {
                
$phpVersionOperator '>=';
            }

            if (!
version_compare(PHP_VERSION$phpVersion$phpVersionOperator)) {
                continue;
            }

            if (
$directoryNode->hasAttribute('prefix')) {
                
$prefix = (string) $directoryNode->getAttribute('prefix');
            } else {
                
$prefix '';
            }

            if (
$directoryNode->hasAttribute('suffix')) {
                
$suffix = (string) $directoryNode->getAttribute('suffix');
            } else {
                
$suffix 'Test.php';
            }

            
$files $fileIteratorFacade->getFilesAsArray(
                
$this->toAbsolutePath($directory),
                
$suffix,
                
$prefix,
                
$exclude
            
);
            
$suite->addTestFiles($files);
        }

        foreach (
$testSuiteNode->getElementsByTagName('file') as $fileNode) {
            if (
$testSuiteFilter && $fileNode->parentNode->getAttribute('name') != $testSuiteFilter) {
                continue;
            }

            
$file = (string) $fileNode->textContent;

            if (empty(
$file)) {
                continue;
            }

            
// Get the absolute path to the file
            
$file $fileIteratorFacade->getFilesAsArray(
                
$this->toAbsolutePath($file)
            );

            if (!isset(
$file[0])) {
                continue;
            }

            
$file $file[0];

            if (
$fileNode->hasAttribute('phpVersion')) {
                
$phpVersion = (string) $fileNode->getAttribute('phpVersion');
            } else {
                
$phpVersion PHP_VERSION;
            }

            if (
$fileNode->hasAttribute('phpVersionOperator')) {
                
$phpVersionOperator = (string) $fileNode->getAttribute('phpVersionOperator');
            } else {
                
$phpVersionOperator '>=';
            }

            if (!
version_compare(PHP_VERSION$phpVersion$phpVersionOperator)) {
                continue;
            }

            
$suite->addTestFile($file);
        }

        return 
$suite;
    }

    
/**
     * @param string $value
     * @param bool   $default
     *
     * @return bool
     *
     * @since  Method available since Release 3.2.3
     */
    
protected function getBoolean($value$default)
    {
        if (
strtolower($value) == 'false') {
            return 
false;
        } elseif (
strtolower($value) == 'true') {
            return 
true;
        }

        return 
$default;
    }

    
/**
     * @param string $value
     * @param bool   $default
     *
     * @return bool
     *
     * @since  Method available since Release 3.6.0
     */
    
protected function getInteger($value$default)
    {
        if (
is_numeric($value)) {
            return (int) 
$value;
        }

        return 
$default;
    }

    
/**
     * @param string $query
     *
     * @return array
     *
     * @since  Method available since Release 3.2.3
     */
    
protected function readFilterDirectories($query)
    {
        
$directories = array();

        foreach (
$this->xpath->query($query) as $directory) {
            
$directoryPath = (string) $directory->textContent;

            if (!
$directoryPath) {
                continue;
            }

            if (
$directory->hasAttribute('prefix')) {
                
$prefix = (string) $directory->getAttribute('prefix');
            } else {
                
$prefix '';
            }

            if (
$directory->hasAttribute('suffix')) {
                
$suffix = (string) $directory->getAttribute('suffix');
            } else {
                
$suffix '.php';
            }

            if (
$directory->hasAttribute('group')) {
                
$group = (string) $directory->getAttribute('group');
            } else {
                
$group 'DEFAULT';
            }

            
$directories[] = array(
              
'path'   => $this->toAbsolutePath($directoryPath),
              
'prefix' => $prefix,
              
'suffix' => $suffix,
              
'group'  => $group
            
);
        }

        return 
$directories;
    }

    
/**
     * @param string $query
     *
     * @return array
     *
     * @since  Method available since Release 3.2.3
     */
    
protected function readFilterFiles($query)
    {
        
$files = array();

        foreach (
$this->xpath->query($query) as $file) {
            
$filePath = (string) $file->textContent;

            if (
$filePath) {
                
$files[] = $this->toAbsolutePath($filePath);
            }
        }

        return 
$files;
    }

    
/**
     * @param string $path
     * @param bool   $useIncludePath
     *
     * @return string
     *
     * @since  Method available since Release 3.5.0
     */
    
protected function toAbsolutePath($path$useIncludePath false)
    {
        
$path trim($path);

        if (
$path[0] === '/') {
            return 
$path;
        }

        
// Matches the following on Windows:
        //  - \\NetworkComputer\Path
        //  - \\.\D:
        //  - \\.\c:
        //  - C:\Windows
        //  - C:\windows
        //  - C:/windows
        //  - c:/windows
        
if (defined('PHP_WINDOWS_VERSION_BUILD') &&
            (
$path[0] === '\\' ||
            (
strlen($path) >= && preg_match('#^[A-Z]\:[/\\\]#i'substr($path03))))) {
            return 
$path;
        }

        
// Stream
        
if (strpos($path'://') !== false) {
            return 
$path;
        }

        
$file dirname($this->filename) . DIRECTORY_SEPARATOR $path;

        if (
$useIncludePath && !file_exists($file)) {
            
$includePathFile stream_resolve_include_path($path);

            if (
$includePathFile) {
                
$file $includePathFile;
            }
        }

        return 
$file;
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.0 [PHP 7 Update] [25.02.2019] maintained by PinoyWH1Z | C99Shell Github | Generation time: 0.0463 ]--