!C99Shell v.2.1 [PHP 7 Update] [1.12.2019]!

Software: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/5.4.16. PHP/5.4.16 

uname -a: Linux roko-bkp 3.10.0-1160.102.1.el7.x86_64 #1 SMP Tue Oct 17 15:42:21 UTC 2023 x86_64 

uid=48(apache) gid=48(apache) groups=48(apache),1003(webmaster) 

Safe-mode: OFF (not secure)

/usr/share/phpMyAdmin/test/libraries/   drwxr-xr-x
Free 9.18 GB of 93.48 GB (9.82%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     PMA_structure_test.php (7.29 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
 * tests for structure.lib.php
 *
 * @package PhpMyAdmin-test
 */

/*
 * Include to test.
 */
require_once 'libraries/Util.class.php';
require_once 
'libraries/php-gettext/gettext.inc';
require_once 
'libraries/url_generating.lib.php';
require_once 
'libraries/structure.lib.php';
require_once 
'libraries/Theme.class.php';
require_once 
'libraries/database_interface.inc.php';
require_once 
'libraries/Message.class.php';
require_once 
'libraries/sanitizing.lib.php';
require_once 
'libraries/sqlparser.lib.php';
require_once 
'libraries/js_escape.lib.php';
require_once 
'libraries/Tracker.class.php';
require_once 
'libraries/Table.class.php';

/**
 * PMA_Structure_Test class
 *
 * this class is for testing structure.lib.php functions
 *
 * @package PhpMyAdmin-test
 */
class PMA_Structure_Test extends PHPUnit_Framework_TestCase
{
    
/**
     * Prepares environment for the test.
     *
     * @return void
     */
    
public function setUp()
    {
        
//$_REQUEST
        
$_REQUEST['log'] = "index1";
        
$_REQUEST['pos'] = 3;

        
//$GLOBALS
        
$GLOBALS['cfg']['MaxRows'] = 10;
        
$GLOBALS['server'] = 1;
        
$GLOBALS['cfg']['ServerDefault'] = "server";
        
$GLOBALS['cfg']['RememberSorting'] = true;
        
$GLOBALS['cfg']['SQP'] = array();
        
$GLOBALS['cfg']['MaxCharactersInDisplayedSQL'] = 1000;
        
$GLOBALS['cfg']['ShowSQL'] = true;
        
$GLOBALS['cfg']['TableNavigationLinksMode'] = 'icons';
        
$GLOBALS['cfg']['LimitChars'] = 100;
        
$GLOBALS['cfg']['Server']['DisableIS'] = false;

        
$GLOBALS['table'] = "table";
        
$GLOBALS['pmaThemeImage'] = 'image';

        
//$_SESSION
        
$_SESSION['PMA_Theme'] = PMA_Theme::load('./themes/pmahomme');
        
$_SESSION['PMA_Theme'] = new PMA_Theme();
    }

    
/**
     * Test for PMA_getHtmlForActionLinks
     *
     * @return void
     */
    
public function testPMAGetHtmlForActionLinks()
    {
        
$current_table = array(
            
'TABLE_ROWS' => 3,
            
'TABLE_NAME' => 'name1',
            
'TABLE_COMMENT' => 'This is a test comment'
        
);
        
$table_is_view false;
        
$tbl_url_query 'tbl_url_query';
        
$titles = array(
            
'Browse' => 'Browse1',
            
'NoBrowse' => 'NoBrowse1',
            
'Search' => 'Search1',
            
'NoSearch' => 'NoSearch1',
            
'Empty' => 'Empty1',
            
'NoEmpty' => 'NoEmpty1',
        );;
        
$truename 'truename';
        
$db_is_system_schema null;
        
$url_query 'url_query';

        
//$table_is_view = true;
        
list(
            
$browse_table$search_table,$browse_table_label,
            
$empty_table$tracking_icon
        
) = PMA_getHtmlForActionLinks(
            
$current_table$table_is_view$tbl_url_query,
            
$titles$truename$db_is_system_schema$url_query
        
);

        
//$browse_table
        
$this->assertContains(
            
$titles['Browse'],
            
$browse_table
        
);

        
//$search_table
        
$this->assertContains(
            
$titles['Search'],
            
$search_table
        
);
        
$this->assertContains(
            
$tbl_url_query,
            
$search_table
        
);

        
//$browse_table_label
        
$this->assertContains(
            
$tbl_url_query,
            
$browse_table_label
        
);

        
//$empty_table
        
$this->assertContains(
            
$tbl_url_query,
            
$empty_table
        
);
        
$this->assertContains(
            
urlencode(
                
'TRUNCATE ' PMA_Util::backquote($current_table['TABLE_NAME'])
            ),
            
$empty_table
        
);
        
$this->assertContains(
            
$titles['Empty'],
            
$empty_table
        
);

        
//$table_is_view = false;
        
$current_table = array(
            
'TABLE_ROWS' => 0,
            
'TABLE_NAME' => 'name1',
            
'TABLE_COMMENT' => 'This is a test comment'
        
);
        
$table_is_view false;
        list(
            
$browse_table$search_table,$browse_table_label,
            
$empty_table$tracking_icon
        
) = PMA_getHtmlForActionLinks(
            
$current_table$table_is_view$tbl_url_query,
            
$titles$truename$db_is_system_schema$url_query
        
);

        
//$browse_table
        
$this->assertContains(
            
$titles['NoBrowse'],
            
$browse_table
        
);

        
//$search_table
        
$this->assertContains(
            
$titles['NoSearch'],
            
$search_table
        
);

        
//$browse_table_label
        
$this->assertContains(
            
$tbl_url_query,
            
$browse_table_label
        
);
        
$this->assertContains(
            
$titles['NoEmpty'],
            
$empty_table
        
);
    }

    
/**
     * Test for PMA_getTableDropQueryAndMessage
     *
     * @return void
     */
    
public function testPMAGetTableDropQueryAndMessage()
    {
        
$current_table = array(
            
'TABLE_ROWS' => 3,
            
'TABLE_NAME' => 'name1',
            
'ENGINE' => 'ENGINE1',
        );
        
$table_is_view false;

        list(
$drop_query$drop_message) = PMA_getTableDropQueryAndMessage(
            
$table_is_view$current_table
        
);

        
//$drop_query
        
$ret "DROP TABLE `name1`";
        
$this->assertEquals(
            
$ret,
            
$drop_query
        
);

        
//$drop_message
        
$ret "Table name1 has been dropped.";
        
$this->assertEquals(
            
$ret,
            
$drop_message
        
);
    }

    
/**
     * Test for PMA_getHtmlShowCreate
     *
     * @return void
     */
    
public function testPMAGetHtmlShowCreate()
    {
        
//mock DBI
        
$dbi $this->getMockBuilder('PMA_DatabaseInterface')
            ->
disableOriginalConstructor()
            ->
getMock();

        
$db 'PMA';
        
$table 'PMA_Table';
        
$is_view_query "SELECT TABLE_NAME
            FROM information_schema.VIEWS
            WHERE TABLE_SCHEMA = '" 
PMA_Util::sqlAddSlashes($db) . "'
                AND TABLE_NAME = '" 
PMA_Util::sqlAddSlashes($table) . "'";

        
$show_create_query 'SHOW CREATE TABLE ' PMA_Util::backquote($db) . '.'
            
PMA_Util::backquote($table);
        
$expected_result 'CREATE TABLE `PMA_Table` ( '
            
'`id` numeric '
            
') ENGINE=InnoDB DEFAULT CHARSET=latin1';

        
$dbi->expects($this->any())
            ->
method('fetchResult')
            ->
with($is_view_query)
            ->
will($this->returnValue(false));

        
$dbi->expects($this->any())
            ->
method('fetchSingleRow')
            ->
with($show_create_query)
            ->
will(
                
$this->returnValue(
                    array(
                        
'Table' => 'PMA_Table',
                        
'Create Table' => $expected_result
                    
)
                )
            );

        
$GLOBALS['dbi'] = $dbi;

        
$output PMA_getHtmlShowCreate($db, array($table));

        
$this->assertContains(
            
'Showing create queries',
            
$output
        
);

        
$this->assertContains(
            
'<legend>Tables</legend><table class="show_create">',
            
$output
        
);

        
$this->assertContains(
            
'<th>Create Table</th>',
            
$output
        
);

        
$this->assertContains(
            
PMA_mimeDefaultFunction($expected_result),
            
$output
        
);
    }
}

:: 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 7 Update] [1.12.2019] maintained by KaizenLouie and updated by cermmik | C99Shell Github (MySQL update) | Generation time: 0.0045 ]--