Neos\Neos\Tests\Unit\FlowQueryOperations\ParentsOperationTest::parentsWillReturnTheSiteNodeAsRootLevelParent PHP Метод

parentsWillReturnTheSiteNodeAsRootLevelParent() публичный Метод

    public function parentsWillReturnTheSiteNodeAsRootLevelParent()
    {
        $siteNode = $this->createMock(NodeInterface::class);
        $firstLevelNode = $this->createMock(NodeInterface::class);
        $secondLevelNode = $this->createMock(NodeInterface::class);
        $siteNode->expects($this->any())->method('getPath')->will($this->returnValue('/site'));
        $mockContext = $this->getMockBuilder(\Neos\Neos\Domain\Service\ContentContext::class)->disableOriginalConstructor()->getMock();
        $mockContext->expects($this->any())->method('getCurrentSiteNode')->will($this->returnValue($siteNode));
        $firstLevelNode->expects($this->any())->method('getParent')->will($this->returnValue($siteNode));
        $firstLevelNode->expects($this->any())->method('getPath')->will($this->returnValue('/site/first'));
        $secondLevelNode->expects($this->any())->method('getContext')->will($this->returnValue($mockContext));
        $secondLevelNode->expects($this->any())->method('getParent')->will($this->returnValue($firstLevelNode));
        $secondLevelNode->expects($this->any())->method('getPath')->will($this->returnValue('/site/first/second'));
        $context = array($secondLevelNode);
        $q = new FlowQuery($context);
        $operation = new ParentsOperation();
        $operation->evaluate($q, array());
        $output = $q->getContext();
        $this->assertEquals(array($siteNode, $firstLevelNode), $output);
    }