/**
  * Tests for PMA_getHtmlForIndexes() method.
  *
  * @return void
  * @test
  */
 public function testPMAGetHtmlForIndexes()
 {
     $indexs = array(array('Non_unique' => 0, 'Packed' => '', 'Key_name' => 'Key_name1', 'Index_type' => 'BTREE', 'Column_name' => 'Column_name', 'Cardinality' => 'Cardinality', 'Collation' => 'Collation', 'Null' => 'Null', 'Comment' => 'Comment'));
     $html = PMA_getHtmlForIndexes($indexs);
     $this->assertContains(__('Indexes'), $html);
     $this->assertContains(__('Keyname'), $html);
     $this->assertContains(__('Type'), $html);
     $this->assertContains(__('Unique'), $html);
     $this->assertContains(__('Packed'), $html);
     $this->assertContains(__('Column'), $html);
     $this->assertContains(__('Cardinality'), $html);
     // items
     $this->assertContains(htmlspecialchars($indexs[0]['Key_name']), $html);
     $this->assertContains(htmlspecialchars($indexs[0]['Index_type']), $html);
     $this->assertContains(htmlspecialchars($indexs[0]['Column_name']), $html);
     $this->assertContains(htmlspecialchars($indexs[0]['Cardinality']), $html);
     $this->assertContains(htmlspecialchars($indexs[0]['Collation']), $html);
 }
Example #2
0
/**
 * Function to get html for schema snapshot
 *
 * @param string $url_query url query
 *
 * @return string
 */
function PMA_getHtmlForSchemaSnapshot($url_query)
{
    $html = '<h3>' . __('Structure snapshot') . '  [<a href="tbl_tracking.php' . $url_query . '">' . __('Close') . '</a>]</h3>';
    $data = PMA_Tracker::getTrackedData($_REQUEST['db'], $_REQUEST['table'], $_REQUEST['version']);
    // Get first DROP TABLE/VIEW and CREATE TABLE/VIEW statements
    $drop_create_statements = $data['ddlog'][0]['statement'];
    if (mb_strstr($data['ddlog'][0]['statement'], 'DROP TABLE') || mb_strstr($data['ddlog'][0]['statement'], 'DROP VIEW')) {
        $drop_create_statements .= $data['ddlog'][1]['statement'];
    }
    // Print SQL code
    $html .= PMA_Util::getMessage(sprintf(__('Version %s snapshot (SQL code)'), htmlspecialchars($_REQUEST['version'])), $drop_create_statements);
    // Unserialize snapshot
    $temp = unserialize($data['schema_snapshot']);
    $columns = $temp['COLUMNS'];
    $indexes = $temp['INDEXES'];
    $html .= PMA_getHtmlForColumns($columns);
    if (count($indexes) > 0) {
        $html .= PMA_getHtmlForIndexes($indexes);
    }
    // endif
    $html .= '<br /><hr /><br />';
    return $html;
}