/** * Tests hideNavigationItem() method. * * @return void * @test */ public function testHideNavigationItem() { $expectedQuery = "INSERT INTO `pmadb`.`navigationhiding`" . "(`username`, `item_name`, `item_type`, `db_name`, `table_name`)" . " VALUES ('user','itemName','itemType','db','')"; $dbi = $this->getMockBuilder('PMA_DatabaseInterface')->disableOriginalConstructor()->getMock(); $dbi->expects($this->once())->method('tryQuery')->with($expectedQuery); $GLOBALS['dbi'] = $dbi; $this->object->hideNavigationItem('itemName', 'itemType', 'db'); }
*/ // Include common functionalities require_once './libraries/common.inc.php'; // Also initialises the collapsible tree class require_once './libraries/navigation/Navigation.class.php'; $response = PMA_Response::getInstance(); $navigation = new PMA_Navigation(); if (!$response->isAjax()) { $response->addHTML(PMA_Message::error(__('Fatal error: The navigation can only be accessed via AJAX'))); exit; } $cfgRelation = PMA_getRelationsParam(); if (isset($cfgRelation['navwork']) && $cfgRelation['navwork']) { if (isset($_REQUEST['hideNavItem'])) { if (!empty($_REQUEST['itemName']) && !empty($_REQUEST['itemType']) && !empty($_REQUEST['dbName'])) { $navigation->hideNavigationItem($_REQUEST['itemName'], $_REQUEST['itemType'], $_REQUEST['dbName'], !empty($_REQUEST['tableName']) ? $_REQUEST['tableName'] : null); } exit; } if (isset($_REQUEST['unhideNavItem'])) { if (!empty($_REQUEST['itemName']) && !empty($_REQUEST['itemType']) && !empty($_REQUEST['dbName'])) { $navigation->unhideNavigationItem($_REQUEST['itemName'], $_REQUEST['itemType'], $_REQUEST['dbName'], !empty($_REQUEST['tableName']) ? $_REQUEST['tableName'] : null); } exit; } if (isset($_REQUEST['showUnhideDialog'])) { if (!empty($_REQUEST['dbName'])) { $response->addJSON('message', $navigation->getItemUnhideDialog($_REQUEST['dbName'])); } exit; }