!C99Shell v. 2.1 [PHP 8 Update] [02.02.2022]!

Software: Apache/2.4.53 (Unix) OpenSSL/1.1.1o PHP/7.4.29 mod_perl/2.0.12 Perl/v5.34.1. PHP/7.4.29 

uname -a: Linux vps-2738122-x 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64 

uid=1(daemon) gid=1(daemon) grupos=1(daemon) 

Safe-mode: OFF (not secure)

/opt/apex_tdfonline/php/3ros/simpletest/   drwxr-xr-x
Free 14.72 GB of 61.93 GB (23.76%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     shell_tester.php (10.39 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
    
/**
     *    base include file for SimpleTest
     *    @package    SimpleTest
     *    @subpackage    UnitTester
     *    @version    $Id: shell_tester.php,v 1.19 2005/08/03 17:26:55 lastcraft Exp $
     */

    /**#@+
     *    include other SimpleTest class files
     */
    
require_once(dirname(__FILE__) . '/test_case.php');
    
/**#@-*/

    /**
     *    Wrapper for exec() functionality.
     *      @package SimpleTest
     *      @subpackage UnitTester
     */
    
class SimpleShell {
        var 
$_output;

        
/**
         *    Executes the shell comand and stashes the output.
         *    @access public
         */
        
function SimpleShell() {
            
$this->_output false;
        }

        
/**
         *    Actually runs the command. Does not trap the
         *    error stream output as this need PHP 4.3+.
         *    @param string $command    The actual command line
         *                              to run.
         *    @return integer           Exit code.
         *    @access public
         */
        
function execute($command) {
            
$this->_output false;
            
exec($command$this->_output$ret);
            return 
$ret;
        }

        
/**
         *    Accessor for the last output.
         *    @return string        Output as text.
         *    @access public
         */
        
function getOutput() {
            return 
implode("\n"$this->_output);
        }

        
/**
         *    Accessor for the last output.
         *    @return array         Output as array of lines.
         *    @access public
         */
        
function getOutputAsList() {
            return 
$this->_output;
        }
    }

    
/**
     *    Test case for testing of command line scripts and
     *    utilities. Usually scripts taht are external to the
     *    PHP code, but support it in some way.
     *      @package SimpleTest
     *      @subpackage UnitTester
     */
    
class ShellTestCase extends SimpleTestCase {
        var 
$_current_shell;
        var 
$_last_status;
        var 
$_last_command;

        
/**
         *    Creates an empty test case. Should be subclassed
         *    with test methods for a functional test case.
         *    @param string $label     Name of test case. Will use
         *                             the class name if none specified.
         *    @access public
         */
        
function ShellTestCase($label false) {
            
$this->SimpleTestCase($label);
            
$this->_current_shell = &$this->_createShell();
            
$this->_last_status false;
            
$this->_last_command '';
        }

        
/**
         *    Executes a command and buffers the results.
         *    @param string $command     Command to run.
         *    @return boolean            True if zero exit code.
         *    @access public
         */
        
function execute($command) {
            
$shell = &$this->_getShell();
            
$this->_last_status $shell->execute($command);
            
$this->_last_command $command;
            return (
$this->_last_status === 0);
        }

        
/**
         *    Dumps the output of the last command.
         *    @access public
         */
        
function dumpOutput() {
            
$this->dump($this->getOutput());
        }

        
/**
         *    Accessor for the last output.
         *    @return string        Output as text.
         *    @access public
         */
        
function getOutput() {
            
$shell = &$this->_getShell();
            return 
$shell->getOutput();
        }

        
/**
         *    Accessor for the last output.
         *    @return array         Output as array of lines.
         *    @access public
         */
        
function getOutputAsList() {
            
$shell = &$this->_getShell();
            return 
$shell->getOutputAsList();
        }
        
        
/**
         *    Will trigger a pass if the two parameters have
         *    the same value only. Otherwise a fail. This
         *    is for testing hand extracted text, etc.
         *    @param mixed $first          Value to compare.
         *    @param mixed $second         Value to compare.
         *    @param string $message       Message to display.
         *    @return boolean              True on pass
         *    @access public
         */
        
function assertEqual($first$second$message "%s") {
            return 
$this->assert(
                    new 
EqualExpectation($first),
                    
$second,
                    
$message);
        }
        
        
/**
         *    Will trigger a pass if the two parameters have
         *    a different value. Otherwise a fail. This
         *    is for testing hand extracted text, etc.
         *    @param mixed $first           Value to compare.
         *    @param mixed $second          Value to compare.
         *    @param string $message        Message to display.
         *    @return boolean               True on pass
         *    @access public
         */
        
function assertNotEqual($first$second$message "%s") {
            return 
$this->assert(
                    new 
NotEqualExpectation($first),
                    
$second,
                    
$message);
        }

        
/**
         *    Tests the last status code from the shell.
         *    @param integer $status   Expected status of last
         *                             command.
         *    @param string $message   Message to display.
         *    @return boolean          True if pass.
         *    @access public
         */
        
function assertExitCode($status$message "%s") {
            
$message sprintf($message"Expected status code of [$status] from [" .
                    
$this->_last_command "], but got [" .
                    
$this->_last_status "]");
            return 
$this->assertTrue($status === $this->_last_status$message);
        }

        
/**
         *    Attempt to exactly match the combined STDERR and
         *    STDOUT output.
         *    @param string $expected  Expected output.
         *    @param string $message   Message to display.
         *    @return boolean          True if pass.
         *    @access public
         */
        
function assertOutput($expected$message "%s") {
            
$shell = &$this->_getShell();
            return 
$this->assert(
                    new 
EqualExpectation($expected),
                    
$shell->getOutput(),
                    
$message);
        }

        
/**
         *    Scans the output for a Perl regex. If found
         *    anywhere it passes, else it fails.
         *    @param string $pattern    Regex to search for.
         *    @param string $message    Message to display.
         *    @return boolean           True if pass.
         *    @access public
         */
        
function assertOutputPattern($pattern$message "%s") {
            
$shell = &$this->_getShell();
            return 
$this->assert(
                    new 
PatternExpectation($pattern),
                    
$shell->getOutput(),
                    
$message);
        }

        
/**
         *    If a Perl regex is found anywhere in the current
         *    output then a failure is generated, else a pass.
         *    @param string $pattern    Regex to search for.
         *    @param $message           Message to display.
         *    @return boolean           True if pass.
         *    @access public
         */
        
function assertNoOutputPattern($pattern$message "%s") {
            
$shell = &$this->_getShell();
            return 
$this->assert(
                    new 
NoPatternExpectation($pattern),
                    
$shell->getOutput(),
                    
$message);
        }

        
/**
         *    File existence check.
         *    @param string $path      Full filename and path.
         *    @param string $message   Message to display.
         *    @return boolean          True if pass.
         *    @access public
         */
        
function assertFileExists($path$message "%s") {
            
$message sprintf($message"File [$path] should exist");
            return 
$this->assertTrue(file_exists($path), $message);
        }

        
/**
         *    File non-existence check.
         *    @param string $path      Full filename and path.
         *    @param string $message   Message to display.
         *    @return boolean          True if pass.
         *    @access public
         */
        
function assertFileNotExists($path$message "%s") {
            
$message sprintf($message"File [$path] should not exist");
            return 
$this->assertFalse(file_exists($path), $message);
        }

        
/**
         *    Scans a file for a Perl regex. If found
         *    anywhere it passes, else it fails.
         *    @param string $pattern    Regex to search for.
         *    @param string $path       Full filename and path.
         *    @param string $message    Message to display.
         *    @return boolean           True if pass.
         *    @access public
         */
        
function assertFilePattern($pattern$path$message "%s") {
            
$shell = &$this->_getShell();
            return 
$this->assert(
                    new 
PatternExpectation($pattern),
                    
implode(''file($path)),
                    
$message);
        }

        
/**
         *    If a Perl regex is found anywhere in the named
         *    file then a failure is generated, else a pass.
         *    @param string $pattern    Regex to search for.
         *    @param string $path       Full filename and path.
         *    @param string $message    Message to display.
         *    @return boolean           True if pass.
         *    @access public
         */
        
function assertNoFilePattern($pattern$path$message "%s") {
            
$shell = &$this->_getShell();
            return 
$this->assert(
                    new 
NoPatternExpectation($pattern),
                    
implode(''file($path)),
                    
$message);
        }

        
/**
         *    Accessor for current shell. Used for testing the
         *    the tester itself.
         *    @return Shell        Current shell.
         *    @access protected
         */
        
function &_getShell() {
            return 
$this->_current_shell;
        }

        
/**
         *    Factory for the shell to run the command on.
         *    @return Shell        New shell object.
         *    @access protected
         */
        
function &_createShell() {
            
$shell = &new SimpleShell();
            return 
$shell;
        }
    }
?>

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

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

--[ c99shell v. 2.1 [PHP 8 Update] [02.02.2022] maintained byC99Shell Github | Generation time: 0.5898 ]--