Neos\ContentRepository\Tests\Unit\Domain\Model\ContextualizedNodeTest::getParentReturnsParentNodeInCurrentNodesContext PHP Method

getParentReturnsParentNodeInCurrentNodesContext() public method

    public function getParentReturnsParentNodeInCurrentNodesContext()
    {
        $currentNodeWorkspace = $this->getMockBuilder(Workspace::class)->disableOriginalConstructor()->getMock();
        $mockFirstLevelNodeCache = $this->getFirstLevelNodeCache();
        $context = $this->getMockBuilder(Context::class)->disableOriginalConstructor()->getMock();
        $context->expects($this->any())->method('getWorkspace')->will($this->returnValue($currentNodeWorkspace));
        $context->expects($this->any())->method('getFirstLevelNodeCache')->will($this->returnValue($mockFirstLevelNodeCache));
        $expectedParentNodeData = new NodeData('/foo', $currentNodeWorkspace);
        $expectedContextualizedParentNode = new Node($expectedParentNodeData, $context);
        $nodeDataRepository = $this->getMockBuilder(NodeDataRepository::class)->disableOriginalConstructor()->setMethods(array('findOneByPathInContext'))->getMock();
        $nodeDataRepository->expects($this->once())->method('findOneByPathInContext')->with('/foo', $context)->will($this->returnValue($expectedContextualizedParentNode));
        $currentNodeData = $this->getMockBuilder(NodeData::class)->setConstructorArgs(array('/foo/baz', $currentNodeWorkspace))->getMock();
        $currentContextualizedNode = $this->getAccessibleMock(Node::class, array('getParentPath'), array($currentNodeData, $context));
        $currentContextualizedNode->expects($this->once())->method('getParentPath')->will($this->returnValue('/foo'));
        $currentContextualizedNode->_set('nodeDataRepository', $nodeDataRepository);
        $actualParentNode = $currentContextualizedNode->getParent();
        $this->assertSame($expectedContextualizedParentNode, $actualParentNode);
    }