Exemplo n.º 1
0
 /**
  * Register supported nodes and readers
  *
  * @param array $readers
  * @return void
  */
 protected function prepareReader($readers)
 {
     if (empty($this->nodeReaders)) {
         /** @var $reader Layout\ReaderInterface */
         foreach ($readers as $readerClass) {
             $reader = $this->readerFactory->create($readerClass);
             $this->addReader($reader);
         }
     }
 }
 public function testInterpret()
 {
     /** @var Reader\Context $contextMock */
     $contextMock = $this->getMockBuilder('Magento\\Framework\\View\\Layout\\Reader\\Context')->disableOriginalConstructor()->getMock();
     $currentElement = new \Magento\Framework\View\Layout\Element('<element><move name="block"/><remove name="container"/><ignored name="user"/></element>');
     /**
      * @var \Magento\Framework\View\Layout\Reader\Move|\PHPUnit_Framework_MockObject_MockObject $moveReaderMock
      */
     $moveReaderMock = $this->getMockBuilder('Magento\\Framework\\View\\Layout\\Reader\\Move')->disableOriginalConstructor()->getMock();
     $moveReaderMock->expects($this->exactly(2))->method('interpret')->willReturn($this->returnSelf());
     $moveReaderMock->method('getSupportedNodes')->willReturn(['move']);
     $this->readerFactoryMock->expects($this->once())->method('create')->willReturnMap([['Magento\\Framework\\View\\Layout\\Reader\\Move', [], $moveReaderMock]]);
     $this->pool->interpret($contextMock, $currentElement);
     $this->pool->interpret($contextMock, $currentElement);
 }