/** * Test that an existing report link is rebuilt under it's parent. * * Function tests CRM_Core_BAO_Navigation::rebuildReportsNavigation. */ public function testUpdateExistingReportMenuLink() { $url = 'civicrm/report/instance/1'; $url_params = 'reset=1'; $existing_nav = CRM_Core_BAO_Navigation::getNavItemByUrl($url, $url_params); $this->assertNotEquals(FALSE, $existing_nav); $existing_nav->parent_id = 1; $existing_nav->save(); CRM_Core_BAO_Navigation::rebuildReportsNavigation(CRM_Core_Config::domainID()); $parent_url = 'civicrm/report/list'; $parent_url_params = 'compid=99&reset=1'; $reportsMenu = CRM_Core_BAO_Navigation::createOrUpdateTopLevelReportsNavItem(CRM_Core_Config::domainID()); $parent_nav = CRM_Core_BAO_Navigation::getNavItemByUrl($parent_url, $parent_url_params, $reportsMenu->id); $this->assertNotEquals($parent_nav->id, 1); $changed_existing_nav = new CRM_Core_BAO_Navigation(); $changed_existing_nav->id = $existing_nav->id; $changed_existing_nav->find(TRUE); $this->assertEquals($changed_existing_nav->parent_id, $parent_nav->id); }