Exemplo n.º 1
0
    public function testGenerateXml()
    {
        $themeMock = $this->getMockForAbstractClass('Magento\Framework\View\Design\ThemeInterface');

        $this->themeResolverMock->expects($this->once())
            ->method('get')
            ->will($this->returnValue($themeMock));

        $this->processorFactoryMock->expects($this->once())
            ->method('create')
            ->with(['theme' => $themeMock])
            ->will($this->returnValue($this->processorMock));

        $xmlString = '<?xml version="1.0"?><layout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">'
            . '<some_update>123</some_update></layout>';
        $xml = simplexml_load_string($xmlString, 'Magento\Framework\View\Layout\Element');
        $this->processorMock->expects($this->once())
            ->method('asSimplexml')
            ->will($this->returnValue($xml));

        $this->structureMock->expects($this->once())
            ->method('importElements')
            ->with($this->equalTo([]))
            ->will($this->returnSelf());
        $this->assertSame($this->model, $this->model->generateXml());
        $this->assertSame('<some_update>123</some_update>', $this->model->getNode('some_update')->asXml());
    }
Exemplo n.º 2
0
 /**
  * {@inheritdoc}
  */
 public function getNode($path = null)
 {
     $pluginInfo = $this->pluginList->getNext($this->subjectType, 'getNode');
     if (!$pluginInfo) {
         return parent::getNode($path);
     } else {
         return $this->___callPlugins('getNode', func_get_args(), $pluginInfo);
     }
 }