PMA_VERSION, 'table_coords' => "table_name", 'displaywork' => 'displaywork', 'db' => "information_schema", 'table_info' => 'table_info', 'relwork' => 'relwork', 'relation' => 'relation', 'bookmarkwork' => 'bookmarkwork', ); //$GLOBALS $GLOBALS['cfg']['Server']['user'] = "user"; $GLOBALS['cfg']['Server']['pmadb'] = "pmadb"; $GLOBALS['cfg']['Server']['bookmarktable'] = "bookmarktable"; //$_SESSION $_SESSION['PMA_Theme'] = Theme::load('./themes/pmahomme'); $_SESSION['PMA_Theme'] = new Theme(); //Mock DBI $dbi = $this->getMockBuilder('PMA\libraries\DatabaseInterface') ->disableOriginalConstructor() ->getMock(); $fetchResult = array("index1"=>"table1", "index2"=>"table2"); $dbi->expects($this->any()) ->method('fetchResult') ->will($this->returnValue($fetchResult)); $getColumns = array( array( "Field" => "field1", "Comment" => "Comment1" ) ); $dbi->expects($this->any()) ->method('getColumns') ->will($this->returnValue($getColumns)); $GLOBALS['dbi'] = $dbi; } /** * Test for PMA_getHtmlForSqlQueryFormInsert * * @return void */ public function testPMAGetHtmlForSqlQueryFormInsert() { //Call the test function $query = "select * from PMA"; $html = PMA_getHtmlForSqlQueryFormInsert($query); //validate 1: query $this->assertContains( htmlspecialchars($query), $html ); //validate 2: enable auto select text in textarea $auto_sel = ' onclick="selectContent(this, sql_box_locked, true);"'; $this->assertContains( $auto_sel, $html ); //validate 3: showMySQLDocu $this->assertContains( PMA\libraries\Util::showMySQLDocu('SELECT'), $html ); //validate 4: $fields_list $this->assertContains( 'assertContains( 'assertContains( 'assertContains( 'assertContains( 'assertContains( 'assertContains( __('Clear'), $html ); } /** * Test for PMA_getHtmlForSqlQueryForm * * @return void */ public function testPMAGetHtmlForSqlQueryForm() { //Call the test function $GLOBALS['is_upload'] = true; $query = "select * from PMA"; $html = PMA_getHtmlForSqlQueryForm($query); //validate 1: query $this->assertContains( htmlspecialchars($query), $html ); //validate 2: $enctype $enctype = ' enctype="multipart/form-data"'; $this->assertContains( $enctype, $html ); //validate 3: sqlqueryform $this->assertContains( 'id="sqlqueryform" name="sqlform">', $html ); //validate 4: $db, $table $table = $GLOBALS['table']; $db = $GLOBALS['db']; $this->assertContains( PMA_URL_getHiddenInputs($db, $table), $html ); //validate 5: $goto $goto = empty($GLOBALS['goto']) ? 'tbl_sql.php' : $GLOBALS['goto']; $this->assertContains( htmlspecialchars($goto), $html ); //validate 6: PMA_Kanji_encodingForm $this->assertContains( PMA_Kanji_encodingForm(), $html ); } }