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( '
| Create Table | ', $output ); $this->assertContains( PMA_mimeDefaultFunction($expected_result), $output ); } }
|---|