1, 'ActionLinksMode' => 'icons', 'LinkLengthLimit' => 1000, ]; $GLOBALS['cfg']['DBG']['sql'] = false; $GLOBALS['server'] = 1; $GLOBALS['db_priv'] = true; $GLOBALS['table_priv'] = true; $GLOBALS['col_priv'] = true; $GLOBALS['proc_priv'] = true; $GLOBALS['flush_priv'] = true; $GLOBALS['is_reload_priv'] = false; $GLOBALS['cfg']['Server']['DisableIS'] = false; $relation = new Relation($GLOBALS['dbi']); $this->operations = new Operations($GLOBALS['dbi'], $relation); } /** * Test for getHtmlForDatabaseComment * * @return void */ public function testGetHtmlForDatabaseComment() { $this->assertRegExp( '/.*db_operations.php(.|[\n])*Database comment.*name="comment"([\n]|.)*/m', $this->operations->getHtmlForDatabaseComment("pma") ); } /** * Test for getHtmlForRenameDatabase * * @return void */ public function testGetHtmlForRenameDatabase() { $db_collation = 'db1'; $html = $this->operations->getHtmlForRenameDatabase("pma", $db_collation); $this->assertStringContainsString('db_operations.php', $html); $this->assertRegExp( '/.*db_rename.*Rename database to.*/', $html ); } /** * Test for getHtmlForDropDatabaseLink * * @return void */ public function testGetHtmlForDropDatabaseLink() { $this->assertRegExp( '/.*DROP.DATABASE.*db_operations.php.*Drop the database.*/', $this->operations->getHtmlForDropDatabaseLink("pma") ); } /** * Test for getHtmlForCopyDatabase * * @return void */ public function testGetHtmlForCopyDatabase() { $db_collation = 'db1'; $html = $this->operations->getHtmlForCopyDatabase("pma", $db_collation); $this->assertRegExp('/.*db_operations.php.*/', $html); $this->assertRegExp('/.*db_copy.*/', $html); $this->assertRegExp('/.*Copy database to.*/', $html); } /** * Test for getHtmlForChangeDatabaseCharset * * @return void */ public function testGetHtmlForChangeDatabaseCharset() { $db_collation = 'db1'; $result = $this->operations->getHtmlForChangeDatabaseCharset("pma", $db_collation); $this->assertRegExp( '/.*select_db_collation.*Collation.*/m', $result ); $this->assertRegExp( '/.*db_operations.php.*/', $result ); } /** * Test for getHtmlForOrderTheTable * * @return void */ public function testGetHtmlForOrderTheTable() { $this->assertRegExp( '/.*tbl_operations.php(.|[\n])*Alter table order by([\n]|.)*order_order.*/m', $this->operations->getHtmlForOrderTheTable( [ ['Field' => "column1"], ['Field' => "column2"], ] ) ); } /** * Test for getHtmlForTableRow * * @return void */ public function testGetHtmlForTableRow() { $method = new ReflectionMethod(Operations::class, 'getHtmlForTableRow'); $method->setAccessible(true); $result = $method->invokeArgs($this->operations, ['name', 'lable', 'value']); $this->assertEquals( '