public function testFindContentWithPermission() { $repositoryMock = $this->getRepositoryMock(); /** @var \eZ\Publish\SPI\Search\Handler $searchHandlerMock */ $searchHandlerMock = $this->getSPIMockHandler('Search\\Handler'); $domainMapperMock = $this->getDomainMapperMock(); $permissionsCriterionHandlerMock = $this->getPermissionsCriterionHandlerMock(); $service = new SearchService($repositoryMock, $searchHandlerMock, $domainMapperMock, $permissionsCriterionHandlerMock, array()); $repositoryMock->expects($this->once())->method('getContentService')->will($this->returnValue($contentServiceMock = $this->getMockBuilder('eZ\\Publish\\Core\\Repository\\ContentService')->disableOriginalConstructor()->getMock())); $criterionMock = $this->getMockBuilder('eZ\\Publish\\API\\Repository\\Values\\Content\\Query\\Criterion')->disableOriginalConstructor()->getMock(); $query = new Query(array('filter' => $criterionMock, 'limit' => 10)); $languageFilter = array(); $spiContentInfo = new SPIContentInfo(); $contentMock = $this->getMockForAbstractClass('eZ\\Publish\\API\\Repository\\Values\\Content\\Content'); /* @var \PHPUnit_Framework_MockObject_MockObject $searchHandlerMock */ $searchHandlerMock->expects($this->once())->method('findContent')->with($this->equalTo($query), $this->equalTo($languageFilter))->will($this->returnValue(new SearchResult(array('searchHits' => array(new SearchHit(array('valueObject' => $spiContentInfo))), 'totalCount' => 1)))); $domainMapperMock->expects($this->never())->method($this->anything()); $contentServiceMock->expects($this->once())->method('internalLoadContent')->will($this->returnValue($contentMock)); $permissionsCriterionHandlerMock->expects($this->once())->method('addPermissionsCriterion')->with($criterionMock)->will($this->returnValue(true)); $result = $service->findContent($query, $languageFilter, true); $this->assertEquals(new SearchResult(array('searchHits' => array(new SearchHit(array('valueObject' => $contentMock))), 'totalCount' => 1)), $result); }