function testFlattenHighlightWithOverlappingEntriesThatHaveEqualEnd() { $highlight1 = new Highlight(5, 10, Highlight::MATCH, 'ref1', 0, 0); $highlight2 = new Highlight(7, 10, Highlight::ADDED, 'ref2', 0, 0); $highlights = array($highlight1, $highlight2); $this->highlight->flattenHighlights($highlights); assertThat($highlights, anArray(array(new Highlight(5, 10, Highlight::UNDEFINED, 'ref1', 0, 0)))); }
/** * @param ItemTreeBounds $itemTreeBounds * @param $licenseId * @param $selectedAgentId * @param $highlightId * @param int $clearingId * @param int $uploadId * @return Highlight[] */ private function getSelectedHighlighting(ItemTreeBounds $itemTreeBounds, $licenseId, $selectedAgentId, $highlightId, $clearingId, $uploadId) { $unmaskAgents = $selectedAgentId; if (empty($selectedAgentId)) { $scanJobProxy = new ScanJobProxy($this->agentsDao, $uploadId); $scanJobProxy->createAgentStatus(array('nomos', 'monk', 'ninka')); $unmaskAgents = $scanJobProxy->getLatestSuccessfulAgentIds(); } $highlightEntries = $this->highlightDao->getHighlightEntries($itemTreeBounds, $licenseId, $unmaskAgents, $highlightId, $clearingId); $groupId = Auth::getGroupId(); if ($selectedAgentId > 0 || $clearingId > 0) { $this->highlightProcessor->addReferenceTexts($highlightEntries, $groupId); } else { $this->highlightProcessor->flattenHighlights($highlightEntries, array("K", "K ")); } return $highlightEntries; }